(SimpleC 编译器很适合作为《计算机系统基础》的编程练习)
virtual void foo();
[1, 2, 3, *rest]
await fetch(...)
C 语言编译器在进行代码优化时,遵循的基本准则是在不改变程序的语义 (即程序的行为和输出结果) 的前提下,提高程序的执行效率和/或减少程序的资源消耗
int foo(int x) { int y = x + 1; return y - 1; }
一些 “不改变语义” 的例子 (编译优化中最重要的 “三板斧”):
while (1)
volatile
if (n <= 26) { for (int i = 0; i < n; i++) { putchar('A' + i); } }
printf