Я хочу передать строку в функцию c, используя указатель на char и изменить ее, и это дало мне ошибку сегментации. Не знаю почему?
Примечание *: я знаю, что могу передать строку в массив символов, это решит проблему
Я пытался передать его в массив символов и передать в функцию имя массива, и он работает, но мне нужно знать, в чем проблема передачи указателя на символ.
void convertToLowerCase(char* str){
int i=0;
while(str[i] != '\0')
{
if(str[i]>='A'&& str[i]<='Z'){
str[i]+=32;
}
i++;
}
}
int main(void){
char *str = "AHMEDROSHDY";
convertToLowerCase(str);
}
Я ожидаю, что выходной str будет "ahmedroshdy", но фактическая ошибка сегментации вывода