Is a C++ preprocessor identical to a C preprocessor?

前端 未结 3 1022
情书的邮戳
情书的邮戳 2020-11-28 12:37

I am wondering how different the preprocessors for C++ and C are.

The reason for the question is this question on a preprocessor-specific question w

3条回答
  •  感情败类
    2020-11-28 13:17

    The C++03 preprocessor is (at least intended to be) similar to the C preprocessor before C99. Although the wording and paragraph numbers are slightly different, the only technical differences I'm aware of between the two are that the C++ preprocessor handles digraphs and universal character names, which are not present in C.

    As of C99, the C preprocessor added some new capabilities (e.g., variadic macros) that do not exist in the current version of C++. I don't remember for sure, but don't believe that digraphs were added.

    I believe C++0x will bring the two in line again (at least that's the intent). Again, the paragraph numbers and wording won't be identical, but I believe the intent is that they should work the same (other than retaining the differences mentioned above).

提交回复
热议问题