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

湛江网站建设优化建站抚州建设工程造价管理站网站

湛江网站建设优化建站,抚州建设工程造价管理站网站,网站后台统计,网站开发 数字证书参考#xff1a;Difference between Structure and Union in C 二者区别 struct 这里不做详细说明#xff0c;因为参考链接中都写明了。只做一些重点强调。 struct中声明的变量#xff0c;在分配空间的时候#xff0c;struct结构空间大小#xff0c;大于等于其内部所有… 参考Difference between Structure and Union in C 二者区别 struct 这里不做详细说明因为参考链接中都写明了。只做一些重点强调。 struct中声明的变量在分配空间的时候struct结构空间大小大于等于其内部所有变量大小的总和一般会大于因为需要字节对齐。 我们看一个例子 #include stdio.hstruct MyStruct {char c;int a;char x;double b; };int main() {MyStruct s;s.c c;s.a 1000;s.x D;s.b 11.5;return 0; }我们依次看看其赋值情况就可以知道内存分布了。 执行s.c c 执行s.a 1000 可以看到中间跳过了3个字节因为int需要4字节对齐。 继续执行s.x D s.b 11.5 double需要8字节对齐因此中间跳过了7个字节。 所以对于结构体来说其内存分布是 所以结构体大小是24字节 验证一下没什么问题。 对于结构体没什么好说的无非就是有相关需求需要一个结构有不同的数据类型。 值得说明的是结构体可以嵌套例如 struct{struct{struct{...}}int x; }访问上来说如果没名字就直接访问有名字就多几个.指的是这种命名 struct{}name;不过嵌套结构似乎很少用吧… union 最大的区别就是联合体中定义的不同数据类型在分配空间的时候是重叠的也就是说它的大小应该以占用最大空间的内个为准要等于它的大小。 #include stdio.hunion MyUnion {int a;double b;char c; };int main() {MyUnion b;b.a 10;b.b 1.0;b.c a;return 0; }b的大小是8也就是最大的double的大小。 我们依次运行看看 b.a 10 b.b 1.0 b.c a 你会发现都是在这8字节的空间内进行的 但是注意覆盖问题。 对于同一块8字节的内存空间覆盖的时候只覆盖自己占的地方例如对于8字节空间改变占1字节的char的时候只覆盖第一个字节剩下的7字节保持不变。 最后它也同样可以嵌套。 至于访问的时候的变化只需要明确访问的都是对应大小的内存单元。 因此不管谁改都是该内存至于值 如果访问的是double就是把这8个字节转换为double如果访问的是int就把前4个字节转换为intchar同理。
http://www.pierceye.com/news/877985/

相关文章:

  • 网上做网站赚钱深圳市无限空间工业设计有限公司
  • 商贸网站建设怎么查看wordpress版本
  • 电子商务网站建设哪本教材比较适合中等专业学校用网站建设yankt
  • 局域网网站建设需要什么条件企业建网站的目的
  • 高校专业建设网站桂林漓江竹筏
  • 自已做个网站怎么做网站网络的可用性
  • 深圳网站设计建设永州做网站
  • 怎么制作网站应用wordpress 淘宝客赚钱
  • 网站在政务新媒体建设方案打开手机网站速度慢
  • 网站备案表服务类网站模板
  • 个人网站维护费用淮安注册公司
  • 网站提交做海鱼的网站
  • 建设网站业务竞争大唯一做魅惑的网站
  • 建设学校网站的意义更换wordpress图标
  • 环保局网站如何做备案证明在线代理服务器网页版
  • 十佳网站武昌做网站哪家好
  • wordpress调用同分类最新文章seo营销网站的设计标准
  • 免费下载网站有哪些连云港网络公司排名
  • 如何迅速建企业网站毕设做网站需要什么技术准备
  • 可以做音基题的音乐网站公司网页设计怎么弄
  • 益阳营销型网站建设乌鲁木做兼职的网站
  • 如何建单位网站怎么让别人找你做网站
  • 青海建设厅职称网站建设小程序怎么挂失
  • 建设在线购物网站51zwd一起做网站广州
  • 如何制作网站图片帮忙做网站
  • 高端做网站公司网络信息安全公司
  • 手机网站图片自适应建设网站用的软件
  • wordpress postid随机苏州百度推广排名优化
  • 重庆企业网站推广服务做性的网站
  • asp.net 创建网站登陆建设银行网站异常