char :1个字节char*(即指针变量): 4个字节(32位的寻址空间是2^32, 即32个bit,也就是4个字节。同理64位编译器) int * 也是 4字节short int : 2个字节int: 4个字节unsigned int : 4个字节float: 4个字节double: 8个字节long: 4个字节long long: 8个字节unsigned long: 4个字节 【64位编译器】...
我们讲过,指针变量根据“基类型”的不同有 int * 型,float * 型,double * 型,char * 型等 但是我们前面在讲数据类型的时候讲过,int 型变量占用 4 字节,float型变量占用 4 字节,double类型变量占用 8字节,char类型占用 1 字节。那么“指针变量”占多少字节呢?是不是基类型占用多少字节,该变量就占用多少字...
我们知道,第一段代码中: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...
几个c语言的小题目,本人新手希望大侠能帮我解释清楚谢谢24.设指针变量占2个字节的内存空间,若有声明"char *p="123";int c;",则执行语句"c=sizeof(p);"后,c的值为A.1 B.2 C.3 D.425.已知有声明"int a=3,b=4;",下列表达式中合法的是 (25)A.a+b=7 B.a=|b| C.a=b=0 D.(a++)++26...
cout << "double" << sizeof(p3) << endl; system("pause"); return 0; } 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 在WIN32编译器下 在x64编译器下 由此得出结论: 指针在Win32下的大小为4字节