1、指针不同于一般变量,存的是变量的地址,在同一架构下地址长度都是相同的(cpu的最大寻址内存空间),所以不同类型的指针长度都一样 你输出的4 4 4,说明指针长度为4字节 可以记录的地址范围是0x00000000~0xFFFFFFFF,这个范围才是指针变量的值 比如说一个char 1字节,可以存在0x0,也可以位于0xFFFFFFFF 而和char占用1字节还是100字节无关,指针的范围只和机器字和系统有关 比如你的32位系统,指针长度为4,在64位操作系统下那么就都是8了
例子:
64位机器,定义的变量 int * a[2][3]占用 2*3*4个字节
本文解释了指针的概念及长度,并指出其取决于CPU的最大寻址内存空间而非所指向的数据类型大小。文中还通过实例说明了在不同位数的操作系统中指针长度的变化。
539

被折叠的 条评论
为什么被折叠?



