From mboxrd@z Thu Jan 1 00:00:00 1970 To: 9fans@cse.psu.edu From: Prem Mallappa Message-ID: Content-Type: text/plain; charset=ISO-8859-1 Subject: [9fans] constant string Date: Mon, 8 Mar 2004 10:15:07 +0000 Content-Transfer-Encoding: quoted-printable Topicbox-Message-UUID: 22bcb72a-eacd-11e9-9e20-41e7f4b1d025 hi, this is my program ------------------------------------------ #include int main(void) { char *s =3D "Hello"; =09 s[2] =3D 'z'; =09 printf ("%s\n", s); =09 return 0; } ------------------------------------------ my question is when i compile this in Linux (gcc) i get a segmentation=20 fault at the second statement of main(), As far as my knowledge i think this is because in 2nd chapter of K&R book it is being mentioned that ' any thing enclosed between " and " is a string constant' so here i am changing a constant, and i get a segmentation fault ( and i also noticed that gcc stores the string Hello in read-only datasegment) but when i compile the same thing in plan9 C compiler ( both native "8c" and "pcc" i get a output of "Hezlo") why this is happenning.. sorry if i am posting to wrong group, thanks in advance prem