#include<stdio.h>
int main()
{
char *name = "Vikram";
printf("%s",name);
name[1]='s';
printf("%s",name);
return 0;
}
На терминале не выводится никакого результата, просто получаю segmentation fault. Но когда я запускаю его в GDB, я получаю следующее -
Program received signal SIGSEGV, Segmentation fault.
0x0000000000400525 in main () at seg2.c:7
7 name[1]='s';
(gdb)
Это означает, что программа получает ошибку SEG на 7-й строке (очевидно, я не могу писать на постоянном массиве символов). Тогда почему printf() строки номер 6 не выполняется?