cond2.c

来自「linux下的gcc编译器」· C语言 代码 · 共 66 行

C
66
字号
// Positive testcase for decls in conditions.extern "C" int printf(const char *, ...);int up = 0;int down = 0;struct T{  int i;  T(int j) { i = j; printf("UP\n"); up++; }  T(const T& t) { i = t.i; printf("unwanted copy\n"); }  ~T() { printf ("DOWN\n"); down++; }  operator int () { return i; }};int main (){  int t;  if (T t = 1)    ;  printf ("\n");    int j = 3;  while (T t = j--)    ;    printf ("\n");    j = 3;  while (1)    {      T t = j--;      if (t) continue;      break;    }    printf ("\n");    j = 3;  for (;T t = j--;)    ;  printf ("\n");    for (int k = 3; T t = k--;)    ;  printf ("\n");    switch (T t = 34)    {    case 34:      ;    }  printf ("\n");    if (up == down && up == 18)    return 0;  else    return 1;}

⌨️ 快捷键说明

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