int \*pa = NULL;
int \*pb = pa + ;
printf("%x\\n", pb);
char \*pca = NULL;
char \*pcb = pca + ;
printf("%x\\n", pcb);
short \*psa = NULL;
short \*psb = psa + ;
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进制)
其他分析类似。
手机扫一扫
移动阅读更方便
你可能感兴趣的文章