char *d = NULL; printf("%d %d %d %d\n", sizeof(a), sizeof(b), sizeof(c), sizeof(d)); return 0; } 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 可见,不管什么样的基类型,系统指针给指针变量分配的内存空间都是 8 字节,在C语言中,只要是指针变量,指针变量的“基类型”仅用来指定该指针...
我们知道,第一段代码中:int* p=&a;定义指针变量p为int*型,p的内存空间里存放a的地址,*p指向int型的变量a,而a在内存空间中是占4个字节; 第二段代码中:char* p=&a;定义指针变量p为char*型,p的内存空间里存放a的地址(注意sizeof(char*)是4个字节,可以存放a的地址),但是*p指向的却是int型变量a的低8...
指针在Win32下的大小为4字节 x64下的大小为8字节