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

结构变量b占用内存字节

  • 内存
  • 2024-06-09 07:16:10
  • 269

一、C语言设有以下结构类型说明和变量定义,则变量b在内存所占字节数是_____。Short占用两个字节
char占用1个字节,数组容量为3,所以总共占用3个字节
float占用4个字节,数组容量为2,所以总共占用8个字节
double占用8个字节
总共21个字节


二、'b'在内存中占几个字节?"B"在内存中占几个字节?

'b'在内存中占用1个字节,'B'在内存中占用1个字节。

在计算机的内存中,无论英文字母是大写还是小写,占用的内存量都是一个字节。英文标点符号也应占一个字节。三个字节长。


扩展信息:

国际单位制(SI):

1KB=1024B;1MB=1024KB;=1024×1024B。

1B(字节,字节)=8bit(见下文);

1KB(千字节,千字节)=1024B=2^10B;

1MB(兆字节);,兆字节,一百万字节,也称为“兆字节”)=1024KB=2^20B

1GB(千兆字节,千兆字节,十亿字节,也称为“千兆字节”))=1024MB=2;^30B;

1TB(太字节、万亿字节、太字节)=1024GB=2^40B;

1EB(艾字节、艾字节、艾字节)=1024PB=2^60B;

1ZB(泽字节、十万亿字节、泽字节)=1024EB=2^70B;

1YB(Yottabyte、百万亿字节、耀字节)=1024ZB=2^80B

1NB(NonaByte,千亿字节)=1024BB=2^100B;

1DB(DoggaByte,十亿万亿字节)=1024NB=2^110B;

链接来源:百度字节百科


三、structdate{inti;charch;doublef;}b;则结构变量中b所占的内存字节数是32位系统中是16
分析:CPU在32位系统中进行位对齐,int为4字节,char为1字节,double为8字节。br/>CPU进行位对齐,基于最长对齐,这里是8字节对齐。
我还是4个字节。为了对齐,ch占用4个字节,因此i和ch正好占用8个字节,与f对齐。