#include<stdio.h>
int main()
{
char *name = "Vikram";
printf("%s",name);
name[1]='s';
printf("%s",name);
return 0;
}
出力は出力されず、セグメント化エラーが発生します。私はGDBでそれを実行した場合でも、私は、次の取得 -printf()とセグメンテーションフォールトの実行
Program received signal SIGSEGV, Segmentation fault.
0x0000000000400525 in main() at seg2.c:7
7 name[1]='s';
(gdb)
をこれは、プログラムが7行(明らかに私は一定のchar配列に書き込むことはできません)にSEG障害を受けることを意味します。では、なぜ行番号6のprintf()が実行されないのですか?
私はあまりよく分かりません。 OSX Lionを実行している私のMac(LLVMに準拠、LLDBでデバッグ)で期待通りに動作します。 –