complete-port.c
来自「gcc3.2.1源代码」· C语言 代码 · 共 97 行
C
97 行
/* This small program uses all the arithmetic operators that may generate calls to library routines which must be implemented in port-specific assembly language. *//* { dg-do link } */#include <stddef.h>int foo ();double dfoo ();void discard (int);void ddiscard (double);intmain (void){ int a = foo (), b = foo (); unsigned int au = foo (), bu = foo (); float af = dfoo (), bf = dfoo (); double ad = dfoo (), bd = dfoo (); discard (a * b); discard (a / b); discard (a % b); discard (au / bu); discard (au % bu); discard (a >> b); discard (a << b); discard (au >> bu); discard (au << bu); ddiscard (ad + bd); ddiscard (ad - bd); ddiscard (ad * bd); ddiscard (ad / bd); ddiscard (-ad); ddiscard (af + bf); ddiscard (af - bf); ddiscard (af * bf); ddiscard (af / bf); ddiscard (-af); discard ((int) ad); discard ((int) af); ddiscard ((double) a); ddiscard ((float) a); ddiscard ((float) ad); discard (ad == bd); discard (ad < bd); discard (ad > bd); discard (ad != bd); discard (ad <= bd); discard (ad >= bd); discard (af == bf); discard (af < bf); discard (af > bf); discard (af != bf); discard (af <= bf); discard (af >= bf); return 0;}voiddiscard (x) int x __attribute__((__unused__));{}voidddiscard (x) double x __attribute__((__unused__));{}intfoo (){ static int table[] = {20, 69, 4, 12}; static int idx; return table[idx++];}doubledfoo (){ static double table[] = {20.4, 69.96, 4.4, 202.202}; static int idx; return table[idx++];}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?