指针变量的内容

 

100             104             108             112             116

           112

            -1

    1078523331

           100

           108

 

a               b               c                d               e

           112

            -1

    1078523331

           100

           108

 

int    a = 112, b = -1;

float  c = 3.14;

int    *d = &a;

float  *e = &c;

 

下面这些表达式的值分别是什么呢?

a

b

c

d

e

 

前3个非常容易:a的值是112,b的值是-1,c的值是3.14。指针变量其实也很容易,d的值是100,e的值是108。如果你认为d和e的值分别是112和3.14,那么你就犯了一个极为常见的错误。d和e被声明为指针并不会改变这些表达式的求值方式一个变量的值就是分配给这个变量的内存位置所存储的数值。如果你简单地认为由于d和e是指针,所以它们可以自动获得存储于位置100和108的值,那么你就错了。变量的值就是分配给该变量的内存位置所存储的数值,即使是指针变量也不例外。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值