char *p=“dsafdsf”的含义
“dsafdsf”是个字符串常量,被存储在常量区,其值不可修改,p是一个局部变量,给p分配的内存是在栈中,相当于一个栈中的字符指针变量指向了一个常量字符串,是不能通过p[0]修改的
char a[]="dsakk"不一样,“dsakk”是字符串常量,给a分配的内存是在栈中,相当于拷贝你一份字符串常量中的内容放进了a中这段在栈中的内存,今后是可以通过a[0]来修改的,当然字符串常量依然是不会变的,只是变的是这个数组中的内容
char *p=“dsafdsf”的含义
“dsafdsf”是个字符串常量,被存储在常量区,其值不可修改,p是一个局部变量,给p分配的内存是在栈中,相当于一个栈中的字符指针变量指向了一个常量字符串,是不能通过p[0]修改的
char a[]="dsakk"不一样,“dsakk”是字符串常量,给a分配的内存是在栈中,相当于拷贝你一份字符串常量中的内容放进了a中这段在栈中的内存,今后是可以通过a[0]来修改的,当然字符串常量依然是不会变的,只是变的是这个数组中的内容