20000223-1.c

来自「this is a gcc file, you can download it 」· C语言 代码 · 共 62 行

C
62
字号
/* Copyright (C) 2000 Free Software Foundation, Inc.   Contributed by Nathan Sidwell 23 Feb 2000 <nathan@codesourcery.com> *//* __alignof__ should never return a non-power of 2   eg, sizeof(long double) might be 12, but that means it must be alignable   on a 4 byte boundary. */void check (char const *type, int align){  if ((align & -align) != align)    {      abort ();    }}#define QUOTE_(s) #s#define QUOTE(s) QUOTE_(s)#define check(t) check(QUOTE(t), __alignof__(t))// This struct should have an alignment of the lcm of all the types. If one of// the base alignments is not a power of two, then A cannot be power of two// aligned.struct A{  char c;  signed short ss;  unsigned short us;  signed int si;  unsigned int ui;  signed long sl;  unsigned long ul;  signed long long sll;  unsigned long long ull;  float f;  double d;  long double ld;  void *dp;  void (*fp)();};int main (){  check (void);  check (char);  check (signed short);  check (unsigned short);  check (signed int);  check (unsigned int);  check (signed long);  check (unsigned long);  check (signed long long);  check (unsigned long long);  check (float);  check (double);  check (long double);  check (void *);  check (void (*)());  check (struct A);  return 0;}

⌨️ 快捷键说明

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