この小さなプログラムをコンパイルして実行し、文字列を反転すると、出力が発生する前にセグメンテーション違反が発生します。これが明白な質問である場合はご容赦ください。私はまだ C に非常に慣れていません。
#include <stdio.h>
int reverse(char string[], int length);
int main() {
char string[] = "reversed";
printf("String at start of main = %s", string);
reverse(string, sizeof(string));
printf("%s\n", string);
return 0;
}
// Reverse string
int reverse(char string[], int length) {
int i;
char reversed[] = {};
int temp;
for(i = 0; i < length; ++i) {
temp = string[i];
reversed[length - i] = temp;
}
return 0;
}