概述
packed的作用是取消字节对齐
#include<stdio.h>
typedef struct {
int i; //4
char a; //1
char b; //1
char c; //1
//1
}Test1;
typedef struct {
int i; //4
char a; //1
char b; //1
char c; //1
}__attribute__((packed))Test2;
typedef struct {
int i; //4
char a; //1
char b; //1
char c; //1
}__attribute__((__packed__))Test3;
int
main(int argc, char *argv[])
{
printf("Test1 = %d rn",sizeof(Test1));
printf("Test2 = %d rn",sizeof(Test2));
printf("Test3 = %d rn",sizeof(Test3));
return 0;
}
/**输出结果:
Test1 = 8
Test2 = 7
Test3 = 7
*/
最后
以上就是奋斗星月为你收集整理的C语言--__attribute__((packed))的全部内容,希望文章能够帮你解决C语言--__attribute__((packed))所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复