当前位置:首页 > 内存 > 正文

c语言bool类型占多大内存

  • 内存
  • 2024-06-14 09:14:08
  • 6583

一、布尔型bool类型占用多长的位置。在C语言中,BOOL实际上是一个int类型,16位或32位。某个头文件中有这样一句话:
typedefintBOOL;
它等于BOOL类型为int。
抱歉回答错误了,现在经过实际测试,true为1,false为0,其他位没有使用,固定为0。


二、一个long类型变量在内存里占据多少字节?多少KB?多少MB?一个char类型,bool类型呢?(最好科学计数法)#include
#include
main(){
longintx;
doubleK=1024.0;
x=sizeof(long);
printf("long:%dbytes,%eKB,%eMB\n",x,x/K,x/K/K);
x=sizeof(char);
printf("char:%dbytes,%eKB,%eMB\n",x,x/K,x/K/K);
x=sizeof(BOOL);
printf("bool:%dbytes,%eKB,%eMB\n",x,x/K,x/K/K);
return0;
结果:
long:4bytes,3.906250e-003KB,3.814697e-006MB
char:1bytes,9.765625e-004KB,9.536743e-007MB
bool:4bytes,3.906250e-003KB,3.814697e-006MB
(结果取决于系统和编译器)