【发布时间】:2014-11-09 08:00:17
【问题描述】:
所以我们在我的 C++ 类中创建了一个指向 char 的指针,指令如下:
对于每个声明,请确保:
将指针初始化为适当的地址值
显示指针的内容(将此值与指向的地址匹配)
显示指针指向的内容(将此值与原始内容匹配)
每当我尝试用 &a 显示 char a 的地址时,它只会输出存储在 char a 中的值而不是地址。当我用整数尝试这个时,它就像我想要的那样工作。
谁能告诉我我做错了什么?
#include <iostream>
using namespace std;
int main()
{
// Question 1, Part I
// (a)
char a = 'A';
char * pa = &a;
//(b)
cout << "Address of a = " << &a << endl;
cout << "Contents of pa = " << pa << endl;
//(c)
cout << "Contents of a = "<< a << endl;
cout << "What pa points to = "<< *pa << endl;
return 0;
}
编辑并运行
【问题讨论】:
-
转换为
void*。cout对打印字符串的char*有特殊处理。顺便说一句,您的代码表现出未定义的行为。
标签: c++ pointers reference char