【问题标题】:Which of the C-family languages have a preprocessor?哪些 C 系列语言有预处理器?
【发布时间】:2011-02-22 22:11:04
【问题描述】:

C 语法系列语言(C、C++、Java、C#、ObjC、JS、AS、...)中,具有兼容的预处理器(在任何程度上)使用 C 预处理器?

【问题讨论】:

  • 作为补充说明,Fortran 和一些汇编代码通常也使用 C 预处理器。

标签: preprocessor compatibility c-preprocessor


【解决方案1】:

Objective C 是 C 语言的超集,最初是作为 C 代码的附加预处理器实现的。它与 C 预处理器完全兼容。

你提到的其他人都没有与 C 规范兼容的预处理器。请记住,在许多情况下,预处理器是特定于汇编器/编译器的东西,您正在寻找的功能可能会或可能不会在不同的专有 IDE/编译器中找到。

当然,C++ 也是 100%(或多或少)兼容的。

【讨论】:

    【解决方案2】:

    C++ 和 Objective-C 都使用 C 预处理器,其他都没有。

    如果需要,您可以随时将宏处理器或模板语言添加到任何构建过程中。

    【讨论】:

      【解决方案3】:

      Java 和 JS 没有预处理器(JS 可以理解,真的,因为您可以将字符串作为语言中的代码运行)。不确定 AS,但 C、C++ 和 ObjC 都有 C 级预处理器。

      C# 确实有一个预处理器,但我从未使用过它,因此无法谈论它的用途。 http://msdn.microsoft.com/en-us/library/ed8yd1ha(VS10.0).aspx

      Boost 预处理器库很棒。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-06-13
        • 1970-01-01
        • 2021-12-04
        • 1970-01-01
        • 2016-09-16
        • 1970-01-01
        相关资源
        最近更新 更多