Я пытаюсь написать простую программу на языке C, чтобы перевернуть строку. Код указан ниже:C программа неожиданно выходит из строя после предоставления правильного вывода
void swap(char* a, char* b){
char* temp;
*temp = *a;
*a = *b;
*b = *temp;
}
char* reverseString(char* str){
int length = strlen(str);
int i=0;
for(i=0; i<(length/2); i++){
swap(&str[i], &str[length-i-1]);
}
return str;
}
int main(){
char str[] = "Hello World";
reverseString(str);
printf("%s\n",str);
return 0;
}
Он печатает правильный результат, но затем он выдает сообщение об отключении СЕГМЕНТАЦИИ. Это происходит в инструкции «return 0» основной функции.
Не могли бы вы помочь мне выяснить, почему происходит SEG FAULT.
Спасибо.
'символ * Температура,' 'Шоуда быть символ температуры,' – BLUEPIXY