说明
当使用cout输出一个指向字符串数组首位元素的指针时,输出结果为字符串数组的完整字符串字面值,出现这种情况的原因,其实并不是指针的问题,而是受cout控制影响。cout会把char* 或const char*指针当作字符串,将从指针指向的元素开始,直到遇到空字符’\0’之间的字符输出。
示例代码片
const char str[]("hello");
const char *s = str;
cout << s << endl;
cout << *s << endl;
cout << str << endl;