为什么不同类型的指针变量所占字节数都是4

2024-12-02 12:21:40
推荐回答(2个)
回答1:

因为四个字节就可以放的下了。(32位系统)

只表示首地址就行了。


int arr[3] = {1, 2, 3};
int *p = arr;
printf("%d\n", *(p+2));

*(p+2)就可以指定到arr[2], 即3。

回答2:

因为指针变量存储的是地址值,32位机器上是4个字节的地址值,即0x00000000~0xffffffff