打印地址的求助
printf("The a addr is %p\n",pa);printf("The i adde is %p\n",po);
printf("The a addr is %d\n",&pa);
printf("The i adde is %d\n",&po);
请问这两个打印出来的地址为什么会一样呢? 求解释!!!
谢谢您的帮助 么么达 %p是以十六进制输出变量地址
%d是以十进制输出变量地址
你把十进制转换成十六进制或者把十进制转换成十六进制,它们就一样了
加油! file:///C:/Users/ASUS/Desktop/PGF8W@L6RY~1_CM~J@@ELUS.png jiexian 发表于 2016-6-11 20:53
%p是以十六进制输出变量地址
%d是以十进制输出变量地址
你把十进制转换成十六进制或者把十进制转换成十六 ...
我一开始也是这样想的可是 我把十进制数转换到十六进制时他们是不一样的 qq1242009750 发表于 2016-6-11 22:01
我一开始也是这样想的可是 我把十进制数转换到十六进制时他们是不一样的
这个想到我脑子都要爆了。。。 #include <stdio.h>
int main()
{
int a = 1;
int o = 3;
int * pa = &a;
int * po = &o;
printf("The a addr %d\n", &a); //输出整型变量a的地址(十进制)
printf("The o adde %d\n", &o);
printf("The pa addr is %p\n", pa); //输出指针变量pa的内容(十六进制),即变量a的地址
printf("The po adde is %p\n", po);
printf("The pa addr is %d\n", &pa); //输出指针变量pa的地址(十进制)
printf("The po adde is %d\n", &po);
return 0;
} jiexian 发表于 2016-6-12 02:08
#include
int main()
画了个内存图 ,大概是这个样子的吧
今天有么问个问题
麻烦师兄帮忙看看 悬赏问题 里有发布 有图片 这个 Vbox 增强工具箱安装失败问题
Stopping VirtualBox Additions这个鬼
3Q 有点明白了,谢谢各位的帮助{:9_237:}
页:
[1]