传进来一个物理地址的地址,这个地址是 int型变量,如何打印 这个int型值作为地址的所指向的值呢:
int in_strm_buf; //这个是存放地址的变量
.....
printf("[%8x]=%d\n",in_strm_buf,*(in_strm_buf));
这样编译有错
error: invalid type argument of 'unary *' (have 'int')
那应该怎么打印呢? 谢谢
printf("[0x%x]=0x%x\n",in_strm_buf,*(void *)(in_strm_buf));备注:void可以改成in_strm_buf地址中存储的数据类型,我是让以十六进制打印出来的
先强制转换成一个指针再解应用
另外,你这只是编译错误
你不能直接操作物理地址
现映射到虚拟地址再来