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

途牛网站建设的特点成都彭州网站建设

途牛网站建设的特点,成都彭州网站建设,wordpress建站网站报错,设计图室内效果图本篇文章目录 1. 声明位段2. 位段的内存分配3. 位段的跨平台问题4.位段的应用5. 如何解决位段的跨平台问题? 1. 声明位段 位段的声明和结构是类似的,有两个不同: 位段的成员必须是 int、unsigned int 或 char。位段的成员名后边有一个冒号和…

本篇文章目录

  • 1. 声明位段
  • 2. 位段的内存分配
  • 3. 位段的跨平台问题
  • 4.位段的应用
  • 5. 如何解决位段的跨平台问题?

1. 声明位段

位段的声明和结构是类似的,有两个不同:

  1. 位段的成员必须是 int、unsigned int 或 char。
  2. 位段的成员名后边有一个冒号和一个数字。
struct A
{int _a:2;int _b:5;int _c:10;int _d:30;
};

2. 位段的内存分配

  1. 位段的空间上是按照需要以4个字节( int )或者1个字节( char )的方式来开辟的。
  2. 冒号后面的数字代表该成员大小为多少个bit位,是bit位不是字节!千万不要被成员的数据类型给迷惑了,认为int就是分配4个字节。
struct A
{int _a:2; // _a的大小为2个bit位int _b:5; // _b的大小为5个bit位int _c:10; // _c的大小为10个bit位int _d:30; // _d的大小为0个bit位
};

举例如何分配内存空间:在这里插入图片描述

一个个说明:因为每个成员变量只申请个位数的bit位,所以是按1个字节来申请内存空间的。

  1. a只能存储3个bit位大小数据,a = 10(补码为1010),只能存后三位010,从低位开始存,那么这1个字节还剩5个bit位。
  2. b大小为4个bit位,还剩5个bit位能存下b,暂时不用开辟空间。b = 12(补码为1100),4个bit位刚好存下4位,最后这1个字节还剩1个bit位。
  3. c的大小是5个bit位,剩下的1个bit位不够存,这1个bit位就直接不使用了(浪费掉),再开辟1个字节存储c,c = 3(补码为0011),5个bit位能存下00011,还剩3个bit位。
  4. d的大小是4个bit位,剩下的3个bit位不够存(然后浪费掉),再开辟1个字节内存空间存储d。d = 4(补码为0100)1个字节能存下。

总共开辟了3个字节。

3. 位段的跨平台问题

位段涉及很多不确定因素,位段是不跨平台的,注重可移植的程序应该避免使用位段。

  1. int 位段被当成有符号数还是无符号数是不确定的。
  2. 位段中最大位的数目不能确定。(16位机器最大16,32位机器最大32,位段成员大小写成27,在16位机器会出问题。)
  3. 位段中的成员在内存中从左向右分配,还是从右向左分配标准尚未定义。
  4. 当一个结构包含两个位段,第二个位段成员比较大,无法容纳于第一个位段剩余的位时,是舍弃剩余的位还是利用,这是不确定的(在vs编译器中的实现是直接舍弃剩余位数)。

总结:跟结构相比,位段可以达到同样的效果,但是可以很好的节省空间,但是有跨平台的问题存在。

4.位段的应用

在这里插入图片描述
对于消息的传输,不仅仅只是把发送的消息传输到目的地就完了那么简单。实际上会将消息进行一个打包,其中还包含了很多信息,缺少这些信息是无法传输消息的。比如你的机器ip地址和你要发送的目的地(对方)的ip地址,这两个信息非常重要(当然也不是说其它信息就不重要了,图中任何一点都很重要)。

对于上面这些信息,如果不使用位段来分配,数据就会比较大。对于网络传输数据而言,当然是越小的数据量网络更流畅,就好比现实生活中的马路,大车多了会比较堵塞,要都是小车那么路况就比较畅通。

5. 如何解决位段的跨平台问题?

其实位段的不兼容、不可移植性也不是很可怕。解决的办法就是针对每个不同的机器/平台设计对应的程序即可,唯一的不方便之处应该就是工作量变大了,不过复制粘贴针对性改一改应该没毛病。

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

相关文章:

  • 为什么搜索不到刚做的网站wordpress中文版安装教程
  • 自己做网站能宣传自己的产品吗郑州网站关键
  • 音乐网站制作源代码中天建设招标网站
  • 网站建设7个基海外推广有前途吗
  • 公司旅游视频网站模板免费下载云龙网站开发
  • 迅捷流程图在线制作网站怎么做网站推
  • 网站的功能需求旅游网站制作分析
  • 门户网站开发用什么框架好app设计流程
  • 做网站的成本在哪光速网站建设
  • 宜昌建设厅网站淄博亿泰网站建设推广
  • 网站单子怎样注册新公司
  • 现在哪个网站做电商好如何把产品放到网上销售
  • 伊春网站优化做网站需要会编程语言吗
  • 公司做网站需要提供的材料怎么给网站做链接
  • 烟台城乡建设住建局网站杭州怎样建设网站
  • 制作网站专业公司哪家好海兴网站建设公司
  • 柳城企业网站建设公司青岛网站建设seo优化
  • 高碑店做网站的公司公司宣传网页
  • 如何用dw做网站底页吴桥县网站建设
  • 高端的响应式网站建设公司wordpress会员导出
  • 网站建设后预期推广方式网站建设基础筹备
  • 专门做音效的网站wordpress商品列表对比插件
  • 58同城租房做网站怎么弄博客网站
  • 江苏廉政建设网站国外做调查的网站
  • 卫生院网站建设全面的网站建设
  • 网站首页title怎么修改域名怎么解析到服务器上
  • 郑州做网站优化的公司汉中城乡建设网站首页
  • 访问自己做的网站吗微信公众平台怎样开发
  • 国家建筑标准设计网太原网站优化步骤
  • 网站建设怎么找客源怎么做旅行网站