bitreverse-17.c
来自「Mac OS X 10.4.9 for x86 Source Code gcc」· C语言 代码 · 共 73 行
C
73 行
/* APPLE LOCAL file 4420068 *//* Exercise zero-length fields. *//* { dg-do run { target powerpc*-*-darwin* } } *//* { dg-options "-std=gnu99" } */#pragma reverse_bitfields on#pragma ms_struct onstruct empty {};struct uc0 { unsigned char content[0]; };struct nest_uc0 { struct uc0 foo; };struct uc0_uib2 { unsigned char foo[0]; unsigned int xx : 2; };struct nest_nest_uc0_uib3 { struct nest_uc0 xx; unsigned int yy : 3; };struct nest_empty_uib3 { struct empty e; unsigned int zz : 3; };union size0 { struct empty e; int i[0]; };union u0 { struct uc0 ss; unsigned int i; };union u1 { struct nest_uc0 ss; unsigned int i; };union u2 { struct uc0_uib2 ss; unsigned int i; };union u3 { struct nest_nest_uc0_uib3 ss; unsigned int i; };union u4 { struct nest_empty_uib3 ss; unsigned int i; };union u5 { union size0 ss; unsigned int i; };struct advance { char c; int spacer[0]; char d;};struct advance2 { char c; struct empty s; char d;};struct advance3 { char c; union size0 u; char d;};int main() { if (sizeof(struct empty) !=0 || sizeof(struct uc0) !=0 || sizeof(struct uc0_uib2) != 4 || sizeof(struct nest_nest_uc0_uib3) != 4 || sizeof(struct nest_empty_uib3) != 4 || sizeof(union size0) != 0 || sizeof(union u0) != 4 || sizeof(union u1) != 4 || sizeof(union u2) != 4 || sizeof(union u3) != 4 || sizeof(union u4) != 4 || sizeof(union u5) != 4 || sizeof(struct advance) != 8 || sizeof(struct advance2) != 2 || sizeof(struct advance3) != 8) return 42; return 0;}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?