c – char * – 为什么指针中没有地址?

前端之家收集整理的这篇文章主要介绍了c – char * – 为什么指针中没有地址?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个关于char的基本问题*我不明白
char* aString = "Hello Stackoverflow";

指针指向字符链的第一个字符.

cout << *aString; // H

但为什么整个字符串都保存在指针中?

cout << aString //Hello Stackoverflow

我期待一个地址,不是地址中保存的地址吗? “Hello Stackoverflow”的地址在哪里?

任何帮助非常感谢

解决方法

运算符<(<(ostream&,char const *)有一个重载,它输出从该指针开始的以null结尾的字符串,并且优先于运算符ostream :: operator<<(void *),它将具有输出地址. 如果需要地址,请将指针强制转换为void *.

猜你在找的C&C++相关文章