char str[] = "hello, world ";
const char str[] = "hello, world ";
char *str = "hello, world ";
str[]是一个普通的数组,内容为对它进行初始化的字符串中的字符序列,包括 '\0 '字符。
const char是一个常量数组,其内容与str[]一样,但是元素不可被修改。
*str是一个字符指针,在初始化之后,它指向一个字符串常量的首地址。通过pmsg修改字符串常量的行为是未定义的。相同字符串常量是否被存储在同一地址是未定义的。
char *str= "welcome ";//在常量区,程序编译时就已经确定了
而
char str[]= "welcome ";//在栈上,是运行时赋值的。
const char str[] = "hello, world ";
char *str = "hello, world ";
str[]是一个普通的数组,内容为对它进行初始化的字符串中的字符序列,包括 '\0 '字符。
const char是一个常量数组,其内容与str[]一样,但是元素不可被修改。
*str是一个字符指针,在初始化之后,它指向一个字符串常量的首地址。通过pmsg修改字符串常量的行为是未定义的。相同字符串常量是否被存储在同一地址是未定义的。
char *str= "welcome ";//在常量区,程序编译时就已经确定了
而
char str[]= "welcome ";//在栈上,是运行时赋值的。