我正在为虚构的DCPU-16 CPU(将在0x10C游戏中使用)编写C编译器.在这个游戏世界中,为系统编写的任何原始软件都是在1988年之前(或期间)开发的:所以我正在尝试编写我的编译器,就像它在1985-1988之间编码一样.我已经获得了C89标准的副本,但是想知道之前的常见编译器与标准时期和常见编码风格的不同之处.
到目前为止,这是我假设的:
我想知道的其他事情:
我有一份 C89 标准的副本,但想知道在此之前的常见编译器与该时期的标准和常见编码风格有何不同。
C 的历史很大程度上是由编译器供应商创造的。在标准化 ANSI C 时,C89 委员会努力不破坏现有代码。我认为 C89 之前的代码很可能可以使用 C89 编译器进行编译。
来自 C89 基本原理:
“在指定标准语言时,委员会使用了几项原则,其中最重要的是:[...]大量 C 代码具有相当大的商业价值。已尽一切努力确保大部分代码将被任何符合该标准的实现所接受。委员会不想强迫大多数程序员修改他们的 C 程序只是为了让符合标准的翻译器接受它们。”