array-init-2.c

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

C
52
字号
/* Test array initializion by store_by_pieces.  *//* { dg-do run } *//* { dg-options "-O2" } */struct A { char c[10]; };extern void abort (void);void__attribute__((noinline))check (struct A * a, int b){  const char *p;  switch (b)    {    case 0:      p = "abcdefghi";      break;    case 1:      p = "j\0\0\0\0\0\0\0\0";      break;    case 2:      p = "kl\0\0\0\0\0\0\0";      break;    case 3:      p = "mnop\0\0\0\0\0";      break;    case 4:      p = "qrstuvwx\0";      break;    default:      abort ();    }  if (__builtin_memcmp (a->c, p, 10) != 0)    abort ();}intmain (void){  struct A a = { "abcdefghi" };  check (&a, 0);  struct A b = { "j" };  check (&b, 1);  struct A c = { "kl" };  check (&c, 2);  struct A d = { "mnop" };  check (&d, 3);  struct A e = { "qrstuvwx" };  check (&e, 4);  return 0;}

⌨️ 快捷键说明

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