pragma-pack-2.c

来自「用于进行gcc测试」· C语言 代码 · 共 49 行

C
49
字号
/* On Solaris, #pragma pack should accept macro expansion.  *//* { dg-do run { target *-*-solaris2.* } } */extern void abort (void);struct {        char one;        long two;} defaultalign;#define ALIGNHIGH 16#pragma pack(ALIGNHIGH)struct {        char one;        long two;} sixteen;#define ALIGN1(X) 1#pragma pack(ALIGN1(4))struct {        char one;        long two;} two;#define ALIGN2(X) X#pragma pack(ALIGN2(2))struct {        char one;        long two;} three;#define EMPTY#pragma pack(EMPTY)struct {        char one;        long two;} resetalign;main(){        if(sizeof(sixteen) < sizeof(defaultalign)) abort();        if(sizeof(two) >= sizeof(defaultalign)) abort();        if(sizeof(three) <= sizeof(two)) abort();        if(sizeof(resetalign) != sizeof(defaultalign)) abort();	return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?