20020412-1.c

来自「xml大全 可读写调用率很高 xml大全 可读写调用率很高」· C语言 代码 · 共 57 行

C
57
字号
/* PR c/3711   This testcase ICEd on IA-32 at -O0 and was miscompiled otherwise,   because std_expand_builtin_va_arg didn't handle variable size types.  */#include <stdarg.h>extern void abort (void);extern void exit (int);void bar (int c){  static int d = '0';  if (c != d++)    abort ();  if (c < '0' || c > '9')    abort ();}void foo (int size, ...){  struct  {    char x[size];  } d;  va_list ap;  int i;  va_start (ap, size);  d = va_arg (ap, typeof (d));  for (i = 0; i < size; i++)    bar (d.x[i]);  d = va_arg (ap, typeof (d));  for (i = 0; i < size; i++)    bar (d.x[i]);  va_end (ap);}int main (void){  int z = 5;  struct { char a[z]; } x, y;            x.a[0] = '0';  x.a[1] = '1';  x.a[2] = '2';  x.a[3] = '3';  x.a[4] = '4';  y.a[0] = '5';  y.a[1] = '6';  y.a[2] = '7';  y.a[3] = '8';  y.a[4] = '9';  foo (z, x, y);  exit (0);}

⌨️ 快捷键说明

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