@oppilas
char *ptr=hello
in this case the string becomes constant but not the ptr, you can do this.
char *ptr=hello;
char arr[]=hi;
ptr[0]=B; //not work
ptr=arr; //work
arr[0]=H; //work
ptr[0]=N; //work
Only string Hello becomes constant, it cant be changed.
Read - const char *ptr , char const
char array[] = hello;
char *pointer = hello;
array is an array, enough to store sequence of characters and '\0'
array will always refer to same storage.
Here, pointer is initialized to point to a string constant, pointer
may be modified, but you cannot chage string contents
--
You received this
When we declare *char *str=hello;*
this hello will be stored in the read-only memory i.e *TEXT Segment*.
so when we try to write the read-only memory by **str='w';* it will
throw *Segmentation
fault*.
Obviously we must allocate some memory in heap to modify it like:
*char *str=(char
Thanks all :).
On 6/25/11, Anantha Krishnan ananthakrishnan@gmail.com wrote:
When we declare *char *str=hello;*
this hello will be stored in the read-only memory i.e *TEXT Segment*.
so when we try to write the read-only memory by **str='w';* it will
throw *Segmentation
fault*.