C 关键词
这是 C 中保留的关键词列表。因为语言使用这些关键词,故不可重定义它们。
|
|
|
|
最常见的以下划线开头的关键词通常通过其便利宏来使用:
关键词 | 用作 | 定义于 |
_Alignas
(C11 起)
|
alignas (C23 中移除) | stdalign.h
|
_Alignof
(C11 起)
|
alignof (C23 中移除) | stdalign.h
|
_Atomic
(C11 起)
|
atomic_bool, atomic_int, ... | stdatomic.h
|
_BitInt
(C23 起)
|
(无宏) | |
_Bool
(C99 起)
|
bool (C23 中移除) | stdbool.h
|
_Complex
(C99 起)
|
complex | complex.h
|
_Decimal128
(C23 起)
|
(无宏) | |
_Decimal32
(C23 起)
|
(无宏) | |
_Decimal64
(C23 起)
|
(无宏) | |
_Generic
(C11 起)
|
(无宏) | |
_Imaginary
(C99 起)
|
imaginary | complex.h
|
_Noreturn
(C11 起)
|
noreturn | stdnoreturn.h
|
_Static_assert
(C11 起)
|
static_assert (C23 中移除) | assert.h
|
_Thread_local
(C11 起)
|
thread_local (C23 中移除) | threads.h
|
而且,每个以双下划线 __ 或单下划线后随大写字母为首的名称是受保留的:细节参阅标识符。
注意合字符 <%
、 %>
、 <:
、
:>
、 %:
以及 %:%:
提供表示标准记号的替用方式。
下列记号在用于预处理器指令语境之内时,为预处理器所识别:
defined |
下列记号用于预处理器指令的语境之外时,为预处理器所识别:
_Pragma(C99 起) |
下列的额外关键词被分类为扩展,而且为条件性支持:
引用
- C17 标准(ISO/IEC 9899:2018):
-
- 6.4.1 Keywords (第 42-43 页)
-
- J.5.9 The fortran keyword (第 422 页)
-
- J.5.10 The asm keyword (第 422 页)
- C11 标准(ISO/IEC 9899:2011):
-
- 6.4.1 Keywords (第 58-59 页)
-
- J.5.9 The fortran keyword (第 580 页)
-
- J.5.10 The asm keyword (第 580 页)
- C99 标准(ISO/IEC 9899:1999):
-
- 6.4.1 Keywords (第 50 页)
-
- J.5.9 The fortran keyword (第 514 页)
-
- J.5.10 The asm keyword (第 514 页)
- C89/C90 标准(ISO/IEC 9899:1990):
-
- 3.1.1 Keywords
-
- G.5.9 The fortran keyword
-
- G.5.10 The asm keyword