【发布时间】:2019-02-04 14:07:03
【问题描述】:
我刚开始学习 c++,我真的不明白,为什么当我 cout &d 时,它显示 char d 的次数与我已经显示的次数一样多 + 加 1 次。
所以它在这里显示了 3 次字符“d”...对于线路
cout
如果有人能用简单的话解释我为什么,我会感谢他。 如果这个问题很愚蠢,我很抱歉。
#include <iostream>
using namespace std;
int main()
{
char d('d');
cout << d << endl;
cout << d << endl;
cout << &d << endl;
return 0;
}
【问题讨论】:
-
当您使用地址运算符
&时,您将获得一个指向您获得地址的变量的指针。如果变量是char类型,那么指向它的指针将是char *类型。这是空终止字节 strings. 的常见类型 -
应该重新打开。这个问题不是关于为什么我看不到地址,而是关于多余的字符是从哪里来的,以及为什么当你更改单个字符时它们会改变。
标签: c++ char cout ampersand addressof