字符串常量 解析

来源:互联网 发布:尼泊尔少年 知乎 编辑:程序博客网 时间:2024/06/16 11:50

实例:

    char *p = "kakaka"; //"kakaka"是字符串常量的地址    char s[] = "kakaka";//这里"kakaka"存放在栈区,因为s这个数组是存在栈区的
  1. 系统在执行前者的过程中,是先定义了一个字符串常量,之后用指针p指向它,而字符串常量是常量,故不可被更新,如语句*(p + 1) = ‘h’;是错误的语句,不会得到想要的结果;

  2. 而系统在执行后者的过程中,并没有定义字符串常量,只是一个字符数组,故该”kakaka”中的某单个字符是可以更改的,其实更改的是存在数组中的每个元素。

0 0