【C语言】指针增减

    int *pa = NULL;
    int *pb = pa + 15;
    printf("%x\n", pb);

    char *pca = NULL;
    char *pcb = pca + 15;
    printf("%x\n", pcb);

    short *psa = NULL;
    short *psb = psa + 15;
    printf("%x\n", psb);

上面代码的结果是:

3c

f

1e

 

分析:

int型指针,每次加1会向后移动一个int大小的距离,在32位情况下,移动32bit,即4个字节。

pa + 15,即向后移动了15个int的距离,即15 * 32 bit = 15 * 4字节

指针中数字是记录字节数的,故pb = 60 = 3c (16进制)

其他分析类似。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值