20040121-1.c

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

C
29
字号
/* Test that (p!=0) + (q!=0) is computed as int,    not boolean *//* { dg-options "-O3" } *//* { dg-do run } */extern void abort (void);char *foo(char *p, char *q) {    int x = (p !=0) + (q != 0);    if (x==2)  return "a"; else return 0;}extern char *bar(char*, char*) __attribute__((noinline));char *bar(char *first, char *last){   int y;   if (!first)  return last;   if (!last)   return first;   if (*first == 'a')     return foo(first, last);   return 0;}main() {   char *p = "a", *q = "b";   if (p)     if (bar(p,q))       return 0;   abort();}

⌨️ 快捷键说明

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