首页 > 解决方案 > 使用格式说明符访问内存地址

问题描述

使用 for 循环,我试图打印数组中每个元素的内存地址。

我试过下面的代码

printf("%p", &arr[i])

但是我的数组是 const word 类型,并且 word 是使用 typedef 定义的(尽管 word 在 typedef 中定义为整数类型)

现在在尝试打印语句时,我得到了错误

format '%p' expects argument of type 'void *', but argument 2 has type 'const word *'

如果 %p 需要一个 void * 类型的参数,我认为不需要强制转换?

标签: cprintingcastingformat-specifiers

解决方案


推荐阅读