#pragma pack(n)

当n大于结构体中内存占用最大的变量内存时,将按照最大内存变量的字节占用数进行对齐,否则,就根据n进行对齐

情况一:

例一:

#pragma pack(4)

struct node{

int a;
char b;
char c;
};

struct node n;

printf("%d\n",sizeof(n));

结果:测试结果为6

例二:

#pragma pack(4)

struct node{

int a;
char b;
int c;

};

struct node n;

printf("%d\n",sizeof(n));

结果:测试结果为12

总结:例一中,a占4字节,b占1字节,由于b和c之和不满4字节,所以b和c共占用4个字节对齐。

例二中,a,b均一样,但是由于c占4字节,必须重新开辟4字节进行对齐,所以最终为12字节。

情况二:

#pragma pack(5)

struct node{

long a;
char b;
char c;
};

struct node n;

printf("%d\n",sizeof(n));

根据测试,最终结果为8,可见,是根于变量n的字节占用数进行对齐的。

最新文章

  1. LINK1123:failure during conversion to COFF:file invalid or corrupt
  2. Delphi以及三方控件的源代码规模
  3. 一个网页抓取的类支持get+post+cookie存储
  4. 轻松解决Linux安装Eclipse方法
  5. codeforces105d Bag of mice ——概率DP
  6. java jps命令
  7. linux中/etc/fstab文件删除或修改了,导致系统无法启动
  8. OpenFlow Switch学习笔记(五)——Group Table、Meter Table及Counters
  9. android绘画折线图二
  10. yar
  11. PopupWindow 的使用
  12. C# 经典入门11章,比较
  13. json基础教程|理解Json
  14. Nodejs进阶:MD5入门介绍及crypto模块的应用
  15. 201621123068 《Java程序设计》第1周学习总结
  16. 自学Python,新手上路,好资源免费分享
  17. Android为TV端助力:intent传递消息
  18. K2百家讲坛 | 越秀地产:K2为房企数字化转型带来更多可能
  19. c#qq发邮件
  20. WeUI0.6.0有一个Calendar在浏览器下无法直接打开问题

热门文章

  1. web基础 (三) CSS
  2. 问题:oracle decode;结果:oracle中的decode的使用
  3. 安卓如何将TXT文件写到特定路径
  4. C++知识点总结(6)
  5. ionic 页面乱码
  6. 获取百度搜索结果的真实url以及摘要和时间
  7. SQL IN, NOT IN, EXISTS, NOT EXISTS
  8. unity3D中制作天空盒(Skyboxes)
  9. ZROI2018普转提day1t4
  10. WordCount 优化版测试小程序实现