Ключевые слова — это предопределенные идентификаторы, которые имеют специальное значение для компилятора языка Си. Их использование строго регламентировано. Имена объектов программы не могут совпадать с ключевыми словами.
список ключевых слов:
auto |
continue |
else |
for |
long |
signed |
switch |
void |
break |
default |
enum |
goto |
register |
sizeof |
typedef |
while |
case |
do |
extern |
if |
return |
static |
union |
|
char |
double |
float |
int |
short |
struct |
unsigned |
При необходимости можно с помощью директив препроцессора определить для ключевых слов другие имена. Например, при наличии в программе макроопределения
#define BOOL int
слово BOOL можно использовать в объявлениях вместо слова int. Смысл объявлений (спецификация целого типа данных) от этого не изменится, однако программа станет более читабельной, если речь идет не просто о целых переменных, а о переменных, предназначенных для хранения значений булевского типа (булевский тип не реализован в языке Си как самостоятельный тип данных).
Имеется также ряд специальных ключевых слов:
СП MSC: |
cdecl |
СП ТС: |
asm |
_cs |
_BX |
far |
cdecl |
_ds |
_ch |
||
fortran |
far |
_es |
_cl |
||
huge |
huge |
_ss |
_Cx |
||
near |
interrupt |
_AH |
_DH |
||
pascal |
near |
_AL |
_DI |
||
const |
pascal |
_AX |
_DL |
||
volatile |
const |
_BH |
_DX |
||
interrupt |
volatile |
_BL |
_SI |
||
_BP |
_SP |
В версии 4.0 СП MSC ключевые слова const и volatile зарезервированы, но использовать их невозможно. В версии 5.0 СП MSC ключевое слово volatile реализовано лишь синтаксически, а const — полностью (как синтаксически, так и семантически). В СП ТС и const, и volatile полностью реализованы. В версии 4.0 СП MSC ключевое слово interrupt не реализовано.
Ключевое слово fortran используется для организации связи программ, написанных на языках Си и Фортран. По действию оно аналогично ключевому слову pascal. Ключевое слово asm применяется для записи в программе на языке Си ассемблерных инструкций. Специальные ключевые слова, начинающиеся с подчеркивания, представляют собой имена псевдопеременных, соответствующих регистрам микропроцессора. Ключевые слова cdecl, pascal, interrupt, near, far, huge, const, volatile объясняются подробно в разделе 3.3.3 "Описатели с модификаторами".