C keywords
Это список зарезервированных ключевых слов в C. Поскольку они используются языком, эти ключевые слова недоступны для переопределения. В качестве исключения, они не считаются зарезервированными в attribute-token s . (since C23)
|
|
|
|
|
Наиболее распространённые ключевые слова, начинающиеся с подчёркивания, обычно используются через свои удобные макросы:
| Ключевое слово | Используется как | Определено в |
|---|---|---|
_Alignas
(C11)
(устарело в C23)
|
alignas (удалено в C23) |
stdalign.h
|
_Alignof
(C11)
(устарело в C23)
|
alignof (удалено в C23) |
stdalign.h
|
_Atomic
(C11)
|
atomic_bool, atomic_int, ... |
stdatomic.h
|
_BitInt
(C23)
|
(нет макроса) | |
_Bool
(C99)
(устарело в C23)
|
bool (удалено в C23) |
stdbool.h
|
_Complex
(C99)
|
complex |
complex.h
|
_Decimal128
(C23)
|
(нет макроса) | |
_Decimal32
(C23)
|
(нет макроса) | |
_Decimal64
(C23)
|
(нет макроса) | |
_Generic
(C11)
|
(нет макроса) | |
_Imaginary
(C99)
|
imaginary |
complex.h
|
_Noreturn
(C11)
(устарело в C23)
|
noreturn |
stdnoreturn.h
|
_Static_assert
(C11)
(устарело в C23)
|
static_assert (удалено в C23) |
assert.h
|
_Thread_local
(C11)
(устарело в C23)
|
thread_local (удалено в C23) |
threads.h
|
Некоторые ключевые слова устарели и сохранены как альтернативные варианты написания для целей совместимости. Они могут использоваться везде, где может применяться ключевое слово.
| Ключевое слово | Альтернативное написание |
|---|---|
alignas
(C23)
|
_Alignas
(C11)
(устарело в C23)
|
alignof
(C23)
|
_Alignof
(C11)
(устарело в C23)
|
bool
(C23)
|
_Bool
(C99)
(устарело в C23)
|
static_assert
(C23)
|
_Static_assert
(C11)
(устарело в C23)
|
thread_local
(C23)
|
_Thread_local
(C11)
(устарело в C23)
|
Не определено, реализовано ли любое из написаний этих ключевых слов, их альтернативных форм, или
true
и
false
в качестве предопределённого макроса.
Каждое имя, начинающееся с двойного подчеркивания
__
или подчеркивания
_
за которым следует заглавная буква, является зарезервированным: смотрите
идентификатор
для подробностей.
Обратите внимание, что диграфы
<%
,
%>
,
<:
,
:>
,
%:
и
%:%:
предоставляют
альтернативный способ представления стандартных токенов
.
Следующие токены распознаются препроцессором когда они используются внутри контекста директивы препроцессора:
|
defined
|
Следующие токены распознаются препроцессором, когда они используются вне контекста директивы препроцессора:
|
_Pragma (C99) |
Следующие дополнительные ключевые слова классифицируются как расширения и условно поддерживаются:
` и `
`, которые согласно инструкциям не подлежат переводу. Поэтому перевод всей HTML-структуры идентичен исходному коду.
Ссылки
- Стандарт C23 (ISO/IEC 9899:2024):
-
- 6.4.1 Ключевые слова (стр: 53)
-
- J.5.9 Ключевое слово fortran (стр: 601)
-
- J.5.10 Ключевое слово asm (стр: 601)
- Стандарт 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 Ключевые слова (стр: 58-59)
-
- J.5.9 Ключевое слово fortran (стр: 580)
-
- J.5.10 Ключевое слово asm (стр: 580)
- Стандарт C99 (ISO/IEC 9899:1999):
-
- 6.4.1 Ключевые слова (стр: 50)
-
- J.5.9 Ключевое слово fortran (стр: 514)
-
- J.5.10 Ключевое слово asm (стр: 514)
- Стандарт C89/C90 (ISO/IEC 9899:1990):
-
- 3.1.1 Ключевые слова
-
- G.5.9 Ключевое слово fortran
-
- G.5.10 Ключевое слово asm
Смотрите также
|
Документация C++
для
ключевых слов
|