C keywords
C keywords
这是C中的保留关键字列表。由于它们被语言使用,因此这些关键字不可用于重新定义。
auto break case char const继续默认执行double else enum extern。 | 如果内联(自C99),则为goto浮动int长寄存器限制(由于C99)返回short。 | 带符号的sizeof静态结构体开关typedef union unsigned void volatile while。 | _Alignas(自C11开始)_Alignof(自C11开始)_Atomic(自C11开始)_Bool(自C99开始)_Complex(自C99开始)_Generic开始(自C11开始)_Imaginary开始(自C11开始)_Noreturn(自C11开始)_Static_assert(自C11开始)_Thread_local 。 |
---|
以下划线开始的最常见的关键字通常通过其便利的宏使用:
关键词 | 用作 | 定义在 |
---|---|---|
_Alignas(自C11以来) | alignas | stdalign.h |
_Alignof(自C11以来) | alignof | stdalign.h |
_Atomic(自C11以来) | atomic_bool。atomic_int,... | stdatomic.h |
_Bool(自C99以来) | 布尔 | stdbool.h |
_Complex(自C99以来) | 复杂 | complex.h |
_Generic(自C11开始) | (没有宏) | |
_Imaginary(自C99以来) | 假想 | complex.h |
_Noreturn(自C11以来) | 不返回的 | stdnoreturn.h |
_Static_assert(自C11开始) | static_assert | ASSERT.H |
_Thread_local(自C11开始) | thread_local | threads.h |
此外,每个以双下划线__开头的名称或带有大写字母的下划线都是保留的:请参阅标识符以了解详细信息。
需要注意的是有向图<%,%>,<:,:>,%:,和%:%:以另一种方式来表示标准令牌。
以下标记在由预处理器识别当它们用于内
预处理器指令的上下文中:
如果elif else endif定义。 | ifdef ifndef定义undef。 | 包括行错误编译指示。 |
---|
当预处理器在预处理器指令的上下文之外
使用时,以下标记会被预处理器识别:
| _Pragma(since C99). |
|:----|
以下附加关键字是有条件支持的:
| asm fortran. |
|:----|
参考
- C11标准(ISO/IEC 9899:2011):
另请参阅
| 用于C ++关键字的C ++文档
|:----|