当前位置: 首页 > news >正文

html模板 网站wordpress 提供了 支持

html模板 网站,wordpress 提供了 支持,外贸客户开发的渠道有哪些,济南商城网站建设多少钱结构体的内存 一.提出疑问 结构体占用的是一片连续的内存空间,大小是由成员变量的类型决定的。但并不是计算所有成员变量的类型大小之和那么简单。 先举一个实例: struct student {int age; //4个字节int telephone; //4个字节 }; int main() {struc…

结构体的内存

一.提出疑问

     结构体占用的是一片连续的内存空间,大小是由成员变量的类型决定的。但并不是计算所有成员变量的类型大小之和那么简单。

先举一个实例:

struct student {int age; //4个字节int telephone;  //4个字节
};
int main()
{struct student s;//      s的字节为8;printf("%d", sizeof(s));return 0;
}

如图,结构体student中含有2个int类型成员变量,代码运行后,可知结构体的大小为8个字节。

可真的是因为两个成员变量的大小之和嘛?

我们再来一个实例:

struct student {int age; //4个字节char name; //1个字节int telephone;  //4个字节
};
int main()
{struct student s;//      s的字节为12;printf("%d", sizeof(s));return 0;
}

图中的三个成员变量分别为 int,char,int类型,三个成员变量的内存相加为9个字节

可为什么结构体内存会等于12呢?

 很明显结构体内存大小 不等于 所有成员变量的内存大小之和

二.计算结构体内存大小

在计算结构体内存大小时,我们得先学会一个规则-----对齐规则。

1. 第一个成员在与结构体变量偏移量为0的地址处
2. 其他成员变量要对齐到某个数字(对齐数)的整数倍的地址处
     对齐数 = 编译器默认的一个对齐数 与 该成员大小的较小值。
      (VS中默认的值为8)
3. 结构体总大小为最大对齐数(每个成员变量都有一个对齐数)的整数倍
4. 如果嵌套了结构体的情况,嵌套的结构体对齐到自己的最大对齐数的整数倍处,结构体的整
体大小就是所有最大对齐数(含嵌套结构体的对齐数)的整数倍。

理论已出,现在来实践计算一下:

struct student {int age; //1个字节char name; //1个字节int telephone;  //4个字节
};
int main()
{struct student s;//      s的字节为12;printf("%d", sizeof(s));return 0;
}

例如以上代码,借助图 解释:

 

 解释思路:

  1.  首先根据规则,第一个成员得在地址为0处,然后成员的内存大小为4个字节,所以占用4个空间,地址0~3
  2. 第二个成员变量得开始遵循对齐规则,由于char为1个字节,所以无论地址为多少,都是1的整数倍,也占用一个空间,地址4
  3. 最后,第三个成员为int类型,此时地址已经到达了4的位置,而现在需要对齐int类型4个字节的整数倍,则需要从8开始,直到占有4个空间,地址8~11
  4. 结束:结构体总大小为最大对齐数(成员变量的内存)的整数倍,而该结构体的最大的内存类型为int 4个字节,而此时使用的内存0~11,则是12,满足条件。

 注:若是不满足时,则需要往后扩充,直到满足为止。

 创作不易,路过的帅哥美女,动动小手,点点赞咯,蟹蟹啦

                                                                              若文章有问题,请指出,虚心接受批评

http://www.yayakq.cn/news/998981/

相关文章:

  • 张店免费做网站商丘做网站的公司有哪些
  • 做彩平的网站合肥企业网站seo
  • 我做网站寿光网站优化
  • 购物网站图标手机网站搜索优化
  • 网站免费建中国咖啡网站建设方案
  • 电子商务网站建设实验企业形象设计成功案例
  • 网站开发是否交印花税巩义网站建设方式优化
  • FPGA毕业设计代做网站把自己做的网站发布
  • 上海企业网站排名优化新乡+网站建设
  • 网站策划书的内容专业网页设计制作价格
  • 网站建设 推广企业税率网站开发与app差距
  • 如东做网站做网站公司徐汇
  • 门户网站风格建立网站编码 优帮云
  • 方太网站谁做的端游排行榜前十名网络游戏
  • 诸城公司做网站ui设计简介
  • 网站推广费用一般多少钱个人网页效果图
  • 网站框架是怎么做的菠萝菠萝蜜高清免费视频
  • 专业的模板建站企业短视频seo排名系统
  • 怎么用外网校内网站做英语spring mvc 做网站
  • 提供南昌网站建设公司长沙人才招聘网最新招聘2022
  • 网站百度网盘汽车网址
  • 做门户类网站多少钱网站的特征包括哪些方面
  • 易企互联网站建设百度学术论文查重免费检测
  • 网站建设列入什么会计科目网站增加二级域名
  • 360网站排名优化创意设计提案
  • 如何把网站能搜到平凉网站开发
  • 关于网站建设的博客服务器及网站建设的特点
  • 做网站用的图片怎样压缩网页兼容性站点
  • 做盗市相关网站网站建设有哪些公司
  • 网页设计展望怎么写张家界专业seo优化