我想做一些看起来相当简单的事情.我得到了结果,但问题是,我无法知道结果是否正确.

我用C语言工作,我有两个指针;我想打印指针的内容.我不想取消引用指针来获取指向的值,我只想要指针存储的地址.

我写了下面的代码,我需要知道的是它是否正确,如果不正确,我如何纠正它.

/* item one is a parameter and it comes in as: const void* item1   */
const Emp* emp1 = (const Emp*) item1; 

printf("\n comp1-> emp1 = %p; item1 = %p \n", emp1, item1 );

虽然我张贴了这一点(这一点很重要,因为它是正确的)是因为我最终需要为指向指针的指针这样做.即:

const Emp** emp1 = (const Emp**) item1; 

推荐答案

你所说的是对的.当然,您会看到emp1和item1具有相同的指针值.

C++相关问答推荐

漏洞仅出现在FreeBSD上,但在Windows、Linux和MacOS上运行得非常好

segfault在C中使用getline()函数

无效使用未定义类型'structsquare'?

返回一个包含数组的 struct

__VA_OPT__(,)是否可以检测后面没有任何内容的尾随逗号?

编译的时候g++通常会比GCC慢很多吗?

特定闪存扇区的内存别名

致命:ThreadSaniizer:在Linux内核6.6+上运行时意外的内存映射

文件权限为0666,但即使以超级用户身份也无法打开

判断X宏的空性

如何在STM8项目中导入STM8S/A标准外设库(ST VisualDeveloper)?

为什么我的Hello World EFI程序构建不正确?

用C语言计算文本文件中的整数个数

ifdef __cplusplus中的整数文字单引号

#定义SSL_CONNECTION_NO_CONST

强制转换变量以在 struct 中蚕食

将多项式从文件.txt加载到终端时出现问题

正在try 理解C++中的`正在释放的指针未被分配‘错误

问题:C#Define上的初始值设定项元素不是常量

使用共享变量同步多线程 C 中的函数