重複の可能性:
C プログラム文字列リテラル
バス エラー: 10 エラー
CにXcode 4.5.2を使用して、私は思った
char * string = "abc";
string[0] = 'f';
と
char string[4] = "abc";
string[0] = 'f';
同等でした。しかし、最初の行でエラーが発生します。
EXC_BAD_ACCESS (コード = 2、アドレス = 0x100 ...)
そして、2行目でエラーは発生しません。これらはストレート C で同等だと思っていました。何が起こっているのですか?
int main (void) {
char * string = "abc";
string[0] = 'f';
} // main