c - 指针寻址行为

标签 c pointers

例如:

int *ptr

&ptr 和 ptr 有什么区别 因为当我这样做时

printf("ptr= %d  but &ptr=%d",ptr,&ptr);

结果不一样。

最佳答案

ptr 是指针值(它是一个地址)。

&ptr是指针对象的地址。

要打印指针值,您必须使用:

printf("ptr= %p  but &ptr=%p", (void *) ptr, (void *) &ptr);

关于c - 指针寻址行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31569575/

相关文章:

c - 用指针声明的数组的大小

c - 在将指针传递给函数时使用 &-操作数?

C++:同一对象的基类与派生类的指针比较

c++ - 为什么链表使用指针而不是在节点内存储节点

c - 指针子串数组

c - 二进制操作数无效/(有 'int *' 和 'int' )?

c - 为 EEPROM 实现小型文件系统是否值得

c - 在 C 中使用 dirent.h 读取和选择文件

c - 为什么在下面的for循环中没有任何条件检查?

c# - 在 C# 中使用指针偏移