¿Cambiar cadena literal en C a través de puntero? [duplicar]
Posible duplicado:
¿Por qué aparece un error de segmentación al escribir en una cadena?
Tengo el siguiente programa:
char *s = "abcdf";
char s1[50] = "abcdf";
s1[0] = 'Q'; // Line 1
s[0] = 'P'; // Line 2
Por quéLine 1
funcionó correctamente yLine 2
causó que el programa se bloquee?