Я изучаю язык C.
Мой вопрос:
Почему параметр strlen является "const"?
size_t strlen(const char * string);
Я думаю, это потому, что строка - это адрес, поэтому он не меняется после инициализации. Если это правильно, значит ли это, что каждый раз, когда вы создаете функцию, используя указатель в качестве параметра, она должна быть постоянной?
Например, если я решу построить функцию, которая устанавливает переменную int равной double, она должна быть определена как:
void timesTwo(const int *num)
{
*num *= 2;
}
или
void timesTwo(int *num)
{
*num *= 2;
}
Или это вообще ничего не меняет?