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

宜宾市珙县住房城乡建设网站海南直聘网

宜宾市珙县住房城乡建设网站,海南直聘网,德宏州乡城建设局网站,84yn页面访问升级#pragma pack 是C/C中的预处理指令,主要用于控制结构体、联合体等数据类型在内存中的对齐方式,作用如下: - 指定对齐字节数:通过 #pragma pack(n) 可指定结构体按n字节对齐(n通常为1、2、4、8、16等2的幂次&#xff09…

#pragma pack 是C/C++中的预处理指令,主要用于控制结构体、联合体等数据类型在内存中的对齐方式,作用如下:

 

- 指定对齐字节数:通过 #pragma pack(n) 可指定结构体按n字节对齐(n通常为1、2、4、8、16等2的幂次)。例如 #pragma pack(1) 表示取消字节对齐,结构体成员紧密排列。

- 节省内存空间:默认对齐可能因编译器规则产生填充字节,压缩对齐可减少内存占用,尤其在嵌入式系统或网络传输场景中很重要。

- 兼容不同平台:不同编译器或系统默认对齐规则可能不同,用该指令可确保结构体在不同环境下有一致的内存布局,避免因对齐差异导致的数据解析问题。

 

通常配合 #pragma pack(pop) 或 #pragma pack() 恢复默认对齐,使用时需注意n的取值应合理,避免因过度压缩影响访问效率。#include <stdio.h>

 

// 未指定对齐时(默认对齐)

#pragma pack(push) // 保存默认对齐状态

struct DefaultAlign {

    char a; // 1字节

    int b; // 4字节,默认对齐下,a后填充3字节

    short c; // 2字节,b后填充2字节(总占8字节)

};

#pragma pack(pop) // 恢复默认对齐

 

// 指定按1字节对齐(无填充)

#pragma pack(1)

struct OneByteAlign {

    char a; // 1字节

    int b; // 4字节,紧跟a后,无填充

    short c; // 2字节,紧跟b后(总占7字节)

};

#pragma pack() // 恢复默认对齐

 

// 指定按2字节对齐(部分填充)

#pragma pack(2)

struct TwoByteAlign {

    char a; // 1字节,后填充1字节(对齐到2字节)

    int b; // 4字节(本身是2的倍数,无需填充)

    short c; // 2字节(对齐到2字节,紧跟b后)

    // 总占1+1(填充)+4+2=8字节

};

#pragma pack(pop) // 恢复之前保存的默认对齐

 

int main() {

    printf("默认对齐结构体大小:%lu字节\n", sizeof(DefaultAlign));

    printf("1字节对齐结构体大小:%lu字节\n", sizeof(OneByteAlign));

    printf("2字节对齐结构体大小:%lu字节\n", sizeof(TwoByteAlign));

    return 0;

}

输出:

默认对齐结构体大小:8字节  
1字节对齐结构体大小:7字节  
2字节对齐结构体大小:8字节  
 

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

相关文章:

  • 自己做网站排名好吗wordpress 梦月酱
  • 阜新门户网站建设腾讯云服务器
  • 个人网站 网站教程自学网站开发需要看什么书
  • 贵阳做网站的公司厦门建设网站公司
  • 能免费做封面的网站wordpress 移动端 主题
  • 百度站长平台网站验证已经有域名 怎么修改网站
  • 华为模板建站网络规划设计师月薪多少
  • 阿里云esc建设网站企业网站后台模板
  • 天峨县建设局网站网站怎么分工做
  • 做网站一定要用cms吗wordpress调用网站标题
  • 爬取数据做网站健身房网站建设
  • 自己怎么做视频网站泉州服装网站建设
  • 小说网站开发过程 实训报告沈阳seo搜索排名优化
  • 网站建设的销售术语微软手机做网站服务器
  • 只做瓶子包装设计的创意网站电脑网站视频怎么下载
  • 前端网站建设插件2345网址导航怎么关
  • 关于实验室建设的英文网站企业核名
  • 网站建设和咨询服务合同网站开发
  • 怎么做百度采购网站抖音代运营合作策划书
  • 两个网站 一个域名石家庄哪家公司做网络推广好
  • 培训类 网站后台台山住房和城乡建设 网站
  • 怎样与知名网站做友情链接视频网站直播怎么做
  • 做网站都有什么功能六 网站建设方案.
  • 广州专门做网站的公司广东高端网站建设
  • 上海工程建设安全协会网站舆情监测系统方案
  • 电子商务网站建设的方法有哪些方面淘宝电脑版登录网页入口
  • 怎么做网站内容调研ios6软件下载网站
  • 徐州免费网站建设国外网站做盗版
  • 哈尔滨企业展示型网站建设响水网站建设服务商
  • 网站建设项目策划书模板范文公司如何申请网址