我确定之前一定有人问过这个问题,但我找不到。
基本上,我正在查看这些变量:
unsigned short* bufferName = 0;
unsigned short* pBuffer = 0;
bufferName = new unsigned short[6400];
pBuffer = bufferName;
cout << &bufferName << &pBuffer
此设置允许将 6400 像素(每个 = 2 字节)读入 bufferName
。变量 pBuffer
用于在 bufferName
的内存块内进行跟踪。
第 5 行的 cout
语句打印每个的地址。但是一旦我递增:pBuffer
,我如何才能找到它指向的新地址?
非常感谢您的耐心和时间。我知道这篇文章对我所做的事情非常简短,但我试图有意保持简短。
最佳答案
但是一旦我递增:pBuffer,我如何才能找到它指向的新地址?
指针指向的地址就是它的值。
所以
cout << pBuffer;
将输出指向的地址。
cout << * pBuffer
将输出指向的地址中的值(称为“解引用”)
cout << &pBuffer
将输出指针本身的地址(永远不会改变)
关于C++:指针,找到它的目标地址?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33696719/