c语言如何实现输出变量的内存地址

c语言如何实现输出变量的内存地址例如:main(){inta;//加入代码,输出a的内存地址}如何实现呢?... c语言如何实现输出变量的内存地址

例如:
main()
{
int a;
//加入代码,输出a的内存地址
}
如何实现呢?
展开
 我来答
天云小店
2015-06-02 · TA获得超过2.8万个赞
知道大有可为答主
回答量:3281
采纳率:91%
帮助的人:790万
展开全部

对于变量可以直接利用取地址运算符&获取变量的地址,之后通过printf语句进行输出。


具体实现方法可以参考如下程序段:

int a=3;
printf("%x", &a);  // 以16进制形式输出变量a的地址(不含0x前缀)
魔术装修师
2019-08-18 · TA获得超过3635个赞
知道大有可为答主
回答量:3037
采纳率:32%
帮助的人:453万
展开全部
刚刚才帮人回答过..
怎么你们一起考试吗??
加入代码:
printf("%x\n",&a);
//内存里的地址用十六位制表示的.
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
门侠沐南琴
2019-06-28 · TA获得超过3795个赞
知道小有建树答主
回答量:3210
采纳率:27%
帮助的人:228万
展开全部
输出的那个东西不是内存地址,从下面的程序可以看出是null的16进制表示。#include<stdio.h>typedef
struct{int
i1:8;int
i2:4;int
i3:4;}bitfield;void
main(){int
k;bitfield
b,b1,b2;bitfield
*
p1,*p2,*p3,*p4;b.i1=20;b.i2=5;b.i3=7;p1=&b;p2=&b1;printf("int
k=%xHn",k);//未初始化的int
k直接输出printf("nsizeof(b)=%dn",sizeof(b));printf("b.i1=%dn",b.i1);printf("b.i1=%xn",b.i1);printf("b=%xHn",b);//已有值的bitfield
bprintf("b=%xHn",&b);//b的地址printf("nb1=%xHn",b1);//未初始化的b1,b2printf("b1=%xHn",&b1);printf("b2=%xHn",b2);printf("b2=%xHn",&b2);printf("np1=%xHn",p1);//已有值的指针p1,p2printf("p2=%xHn",p2);printf("np3=%xHnp4=%xHn",p3,p4);/*未初始化的指针p3,p4*/printf("&p4=%xHn",&p4);//指针变量p4的地址}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-10-24
展开全部
main()
{
int a;
//加入代码,输出a的内存地址
printf("内存地址为:%d",&a);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2013-10-24
展开全部
printf("%p" , &a); /*&是取地址运算符*/
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(6)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式