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

政府网站建设常态化网络推广与营销

政府网站建设常态化,网络推广与营销,工程造价信息月刊,苏州工业园区最新疫情结构体相信大家已经了解过了,现在我们深入讨论一个问题,计算结构体的大小 也是很热门的一个考点:结构体内存对齐 先看看下面结构体的大小 typedef struct Test {char a;char b;char c; }Test; 很容易看出答案为3,结构体的大小位…

结构体相信大家已经了解过了,现在我们深入讨论一个问题,计算结构体的大小

也是很热门的一个考点:结构体内存对齐

先看看下面结构体的大小

typedef struct Test
{char a;char b;char c;
}Test;

很容易看出答案为3,结构体的大小位各成员之和

但是如果代码变成这样的呢

typedef struct Test
{char a;double b;int c;
}Test;

难道会是1+8+4,但是运行结果却不是

这就是我们要进行的内存对齐 

typedef struct Test
{char a;   //1+7double b; //8int c;    //4+4
}Test;

此时答案为24 

 可以得到:基本数据类型的对齐值为所占空间的大小,自定义类型的对齐值为内部成员的最大空间

typedef struct Test
{char a;   //1+3int b;    //4double c; //8
}Test;

此时我们的答案变成了16 

所以成员数据在没有要求的情况下,一般从小到大安排数据,所占空间最小。

当我们的程序有了自定义类型的对齐值时,例如:

#pragma pack(4)
typedef struct Test
{char a;    //1+3double b;  //8int c;     //4
}Test; 

程序的指定对齐值-------#pragma pack(n),n必须是2的幂次方,n为1时,直接将其内部成员加起来即可

##pragma pack(),取消设置的默认对齐数,还原为默认

但是如果程序如下

#pragma pack(4)
typedef struct Test
{char a;   //1+1short b;  //2int c;    //4
}Test;

此时我们的答案为8 

 程序的有效对齐值为程序指定对齐值与自身对齐值的较小值

特别注意,我们看下面代码(示例)

typedef struct Test
{int a;struct t{char b;char c;char d;char e;};short f;
}Test;

按照我们上面的内存对齐的规则,答案应当为12,但是结构确为8 ,在C++中,只要结构体内部的结构带名字(t只是举例),此时内部的结构体就变成了结构体类型,其不占空间大小

最后,我们为什么要进行内存对齐?

拿两张图来说

不对齐

 对齐

 结构体的内存对齐是用空间换时间的做法

大部分参考资料这样说

1. 平台原因(移植原因)
不是所有的硬件平台都能访问任意地址上的任意数据的;某些硬件平台只能在某些地址处取某些特定类型的数据,否则抛出硬件异常。
2. 性能原因
数据结构(尤其是栈)应该尽可能地在自然边界上对齐。 原因在于,为了访问未对齐的内存,处理器需要作两次内存访问;而对齐的内存访问仅需要一次访问。

http://www.hkea.cn/news/16421/

相关文章:

  • 政府网站建设需求调查湖北网站设计
  • 网站建设金网推拉新app推广接单平台
  • 西安航空城建设发展集团网站石家庄seo优化公司
  • 上海做网络推广上海seo优化bwyseo
  • 邢台网站建设seo外包公司费用
  • 网站建设与制作课后题答案新泰网站seo
  • 沈阳做网站最好的公司百度公司招聘岗位
  • 上海金融网站建设公司网站模板之家免费下载
  • 财务公司网站建设社群营销的案例
  • html教程菜鸟教程语法系统优化软件哪个最好的
  • 网站建设 业务百度竞价专员
  • wordpress 相册 边框优化大师的优化项目有哪7个
  • 昆明网站搭建网站服务器ip查询
  • 网站建设费用请示网赌怎么推广拉客户
  • 自己做的网站上传百度关键词搜索排名代发
  • 长沙百度网站优化网盘搜索
  • 开封网站建设价格培训班报名
  • 可以做夫妻的游戏视频网站优化营商环境评价
  • mysql网站数据库seo零基础视频教程
  • 简述网站的建设步骤seo网站优化做什么
  • python代码网站成都网络推广
  • 阿里巴巴网站推广怎么做seo全国最好的公司
  • 土建网招聘信息seo基础课程
  • 网站永久镜像怎么做百度热搜榜怎么打开
  • 做彩页素材的网站企业关键词优化价格
  • 南昌专业网站建设广州优化防控措施
  • oa系统登录成都关键词优化排名
  • 公司网站设计公司排名如何引流推广产品
  • 简述建立网站的步骤推广代理
  • 成都网站建设四易维达社区营销推广活动方案