字符串字面值

字符串字面值

由单引号括起来的一个字符称为char型字面值,双引号括起来的零个或者多个字符则构成字符串字面值

'a'; //char型字面值
"a";//字符串字面值

字符串字面值的类型实质是const char类型的数组。C风格字符串是以空字符('\0')结束的字符数组,字符串字面值就是该类型的实例。因此,编译器在每个字符串的结尾处添加一个空字符('\0'),字符串字面值的实际长度要比它的内容多1。

存储

长度为n的字符串字面值,被分配n+1长度的字符数组,用来存储字符序列及一个终止的空字符’\0’,存储在虚拟内存的只读数据段中,在编译阶段就对相关数据分配内存。因此具有:

  • 只读
  • 生命周期与整个程序相同

操作

//视为一个const char数组,本身就是数组名
cout << "hello"[1]; //输出e
//视为数组首元素指针
const char* a = "hello";
cout << *a;//输出h
posted @ 2025-06-13 14:48  名字好难想zzz  阅读(24)  评论(0)    收藏  举报