Re: [algogeeks] Re: char *arr and char arr[]
@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 *ptr, char * const ptr for more details. I think you now got it. On Sat, Jun 25, 2011 at 4:59 PM, oppilas . wrote: > Thanks all :). > > > On 6/25/11, Anantha Krishnan 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*. > > > > Obviously we must allocate some memory in heap to modify it like: > > *char *str=(char *)malloc(1024);* > > > > Thanks & Regards, > > Anantha Krishnan > > > > On Sat, Jun 25, 2011 at 2:16 PM, Adarsh wrote: > > > >> 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 message because you are subscribed to the Google > Groups > >> "Algorithm Geeks" group. > >> To post to this group, send email to algogeeks@googlegroups.com. > >> To unsubscribe from this group, send email to > >> algogeeks+unsubscr...@googlegroups.com. > >> For more options, visit this group at > >> http://groups.google.com/group/algogeeks?hl=en. > >> > >> > > > > -- > > You received this message because you are subscribed to the Google Groups > > "Algorithm Geeks" group. > > To post to this group, send email to algogeeks@googlegroups.com. > > To unsubscribe from this group, send email to > > algogeeks+unsubscr...@googlegroups.com. > > For more options, visit this group at > > http://groups.google.com/group/algogeeks?hl=en. > > > > > > -- > You received this message because you are subscribed to the Google Groups > "Algorithm Geeks" group. > To post to this group, send email to algogeeks@googlegroups.com. > To unsubscribe from this group, send email to > algogeeks+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/algogeeks?hl=en. > > -- *Regards Sagar Pareek M.Tech cse (pur.) Motilal Nehru National Institute Of Technology (MN NIT) Allahabad* -- You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to algogeeks@googlegroups.com. To unsubscribe from this group, send email to algogeeks+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/algogeeks?hl=en.
Re: [algogeeks] Re: char *arr and char arr[]
Thanks all :). On 6/25/11, Anantha Krishnan 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*. > > Obviously we must allocate some memory in heap to modify it like: > *char *str=(char *)malloc(1024);* > > Thanks & Regards, > Anantha Krishnan > > On Sat, Jun 25, 2011 at 2:16 PM, Adarsh wrote: > >> 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 message because you are subscribed to the Google Groups >> "Algorithm Geeks" group. >> To post to this group, send email to algogeeks@googlegroups.com. >> To unsubscribe from this group, send email to >> algogeeks+unsubscr...@googlegroups.com. >> For more options, visit this group at >> http://groups.google.com/group/algogeeks?hl=en. >> >> > > -- > You received this message because you are subscribed to the Google Groups > "Algorithm Geeks" group. > To post to this group, send email to algogeeks@googlegroups.com. > To unsubscribe from this group, send email to > algogeeks+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/algogeeks?hl=en. > > -- You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to algogeeks@googlegroups.com. To unsubscribe from this group, send email to algogeeks+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/algogeeks?hl=en.
Re: [algogeeks] Re: char *arr and char arr[]
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 *)malloc(1024);* Thanks & Regards, Anantha Krishnan On Sat, Jun 25, 2011 at 2:16 PM, Adarsh wrote: > 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 message because you are subscribed to the Google Groups > "Algorithm Geeks" group. > To post to this group, send email to algogeeks@googlegroups.com. > To unsubscribe from this group, send email to > algogeeks+unsubscr...@googlegroups.com. > For more options, visit this group at > http://groups.google.com/group/algogeeks?hl=en. > > -- You received this message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to algogeeks@googlegroups.com. To unsubscribe from this group, send email to algogeeks+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/algogeeks?hl=en.
[algogeeks] Re: char *arr and char arr[]
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 message because you are subscribed to the Google Groups "Algorithm Geeks" group. To post to this group, send email to algogeeks@googlegroups.com. To unsubscribe from this group, send email to algogeeks+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/algogeeks?hl=en.