为什么C++被提及为'usually'编译语言?

Why was C++ mentioned as a 'usually' compiled language?

本文关键字:usually 编译 语言 C++ 为什么      更新时间:2023-10-16

在C 标签Wiki中,据说

c 是...(通常(编译...编程语言...

但是Wikipedia和cplusplus.com断言C 是一种编译语言而没有提及任何例外。

您能告诉我们C 是通常而不是始终,一种编译语言的原因吗?何时可以将C 视为非编译语言?


Wikipedia:

c 是一种编译的语言,在许多平台上都可以实现IT的实现。

cplusplus.com:

...是一种编译语言。 C 直接编译到机器的本机代码,允许

这可能表明存在非编译形式的C 。是什么使Wiki陈述为"通常"?

因为C 标准定义的" C "只是一种在抽象机中运行的编程语言。实现可以自由地做他们想模拟该抽象机器的行为的任何事情。

因此,不管某人是否真正制作了C 解释器,都说C 总是被编译的是一个毫无根据的假设。

没有任何技术原因为什么您不能编写 c 解释器而不是编译器,我相信过去已经写了一些。

c也是一种(通常(编译的语言,但我本人在20年前写了一本(缓慢,递归体面的(C89口译员。C 只是((同一问题的更难版本。

有一些C 子集的解释器(相关问题(,但是绝大多数C 工作都是使用编译器完成的。使用口译员是如此罕见,以至于没有C 文献或较大的C 库或程序不明确/对于这些解释者而言,将其限制为可以在解释器上使用的C 子集。

使用C ,实际上比解释任何c 更为普遍。

无论如何,我读过的最新相关新闻(在黑客新闻上(是关于C 17 repl。

在大多数情况下,C 是编译的,但是,Cring是C 解释器。我没有尝试过太多,但似乎是一个相当完整的C 实现。