问个字符串的基本问题# Programming - 葵花宝典
d*e
1 楼
请问无论通过何种方式创建字符串,compiler都会在末尾加上一个或多个的null字符'\
0',这样说对么?
即无论是在堆,栈还是常量区:
char *cp = new char[5];
cp = "hello";
或者
char *cp = "hello";
或者
char cp[] = "hello";
等等,都会有
cp[5] == '\0';
对吧?(用g++编译运行结果是)
我有检查了一下cp[6], cp[7], ..., cp[100],怎么也都是'\0'字符?是碰巧这片区域
都是空字符?请问以上初始化字符串的时候到底是初始化几个字符?
小弟菜鸟,还望各位前辈多包涵指教
0',这样说对么?
即无论是在堆,栈还是常量区:
char *cp = new char[5];
cp = "hello";
或者
char *cp = "hello";
或者
char cp[] = "hello";
等等,都会有
cp[5] == '\0';
对吧?(用g++编译运行结果是)
我有检查了一下cp[6], cp[7], ..., cp[100],怎么也都是'\0'字符?是碰巧这片区域
都是空字符?请问以上初始化字符串的时候到底是初始化几个字符?
小弟菜鸟,还望各位前辈多包涵指教