Служебные (ключевые) слова.
Идентификаторы, зарезервированные в языке, т.е. такие, которые нельзя использовать в качестве свободно выбираемых программистом имен, называют служебными словами. Служебные слова определяют типы данных, классы памяти, квалификаторы типа, модификаторы, псевдопеременные и операторы. В стандарте языка определены следующие служебные слова:
auto | break | case | char | const | continue | default | do |
double | else | enum | extern | float | for | goto | if |
int | long | register | return | short | signet | sizeof | Static |
struct | switch | typedef | union | unsigned | void | volatile | Wile |
По смысловой нагрузке служебные слова группируются следующим образом:
Для обозначения типов данных используются спецификаторы типов и квалификаторы типов.
К спецификаторам типов относятся:
char - символьный;
double - вещественный двойной точности с плавающей точкой;
enum - перечисляемый тип (перечисление) - определение целочисленных констант, для каждой из которых вводятся имя и значение;
float - вещественный с плавающей точкой;
int- целый;
long - целый увеличенной длины (длинное целое);
short - целый уменьшенной длины (короткое целое);
struct - структура (структурный тип);
signed - знаковый, т.е. целое со знаком (старший бит считается знаковым);
union - объединение (объединяющий тип);
unsigned - беззнаковый, т.е. целое без знака (старший бит не считается знаковым);
void - отсутствие значения;
typedef - вводит синоним обозначения типа (определяет сокращенное наименование для обозначения типа).
Квалификаторы типа:
const - квалификатор объекта, имеющего постоянное значение, т.е. доступного только для чтения;
volatile - квалификатор объекта, значение которого может измениться без явных указаний программиста.
Квалификаторы типа информируют компилятор о необходимости и (или) возможности особой обработки объектов в процессе оптимизации кода программы.
Для обозначения классов памяти используются:
auto - автоматический;
extern - внешний; register - регистровый; static - статический.
Для построения операторов используются служебные слова:
break - выйти из цикла или переключателя;
continue - завершить текущую итерацию цикла (продолжить цикл, перейдя к следующей итерации);
do - выполнять (заголовок оператора цикла с постусловием);
for - для (заголовок оператора параметрического цикла);
goto - перейти (безусловный переход);
if - если - обозначение условного оператора;
return - возврат (из функции);
switch - переключатель;
while - пока (заголовок цикла с предусловием или завершение цикла do).
К служебным словам также отнесены следующие идентификаторы:
default - определяет действия при отсутствии нужного варианта в операторе switch;
case - определяет вариант в операторе switch;
else - входит в оператор if, определяя альтернативную ветвь;
sizeof - операция определения размера операнда (в байтах).
Добавим еще одно соглашение, обычно соблюдаемое авторами компиляторов и стандартных библиотек языка Си. Идентификаторы, начинающиеся с одного или двух символов подчеркивания "_", зарезервированы для использования в библиотеках и компиляторах. Поэтому такие идентификаторы не рекомендуется выбирать в качестве имен в прикладной программе на языке Си. Следующее соглашение относительно имен относится уже не к стандарту и не к реализациям, а отображает стиль оформления текста программы. Рекомендуется при программировании имена констант записывать целиком заглавными буквами.
Стандартные математические функции (файл math.h):
Функция | Краткое описание |
abs | нахождение абсолютного значения выражения типа int |
acos | вычисление арккосинуса. Аргументы этой и других тригонометрических функций задаются в радианах |
asin | вычисление арксинуса |
atan | вычисление арктангенса х |
atan2 | вычисление арктангенса от у/х |
cabs | нахождение абсолютного значения комплексного числа |
ceil | нахождение наименьшего целого, большего или равного х |
_clear87 | получение значения и инициализация слова состояния сопроцессора и библиотеки арифметики с плавающей точкой |
_control87 | получение старого значения слова состояния для функций арифметики с плавающей точкой и установка нового состояния |
cos | вычисление косинуса |
cosh | вычисление гиперболического косинуса |
exp | вычисление экспоненты |
fabs | нахождение абсолютного значения типа double |
floor | нахождение наибольшего целого, меньшего или равного х |
fmod | нахождение остатка от деления х/у |
_fpreset | повторная инициализация пакета плавающей арифметики |
frexp | вычисляет для х вещественную мантиссу m и целое n так, что x=m*2n |
hypot | вычисление гипотенузы |
labs | нахождение абсолютного значения типа long |
ldexp | вычисление х*2e |
log | вычисление натурального логарифма |
log10 | вычисление логарифма по основанию 10 |
matherr | управление реакцией на ошибки при выполнении функций математической библиотеки |
modf | разложение х на дробную и целую часть |
pow | вычисление х в степени у |
sin | вычисление синуса |
sinh | вычисление гиперболического синуса |
sqrt | нахождение квадратного корня |
_status87 | получение значения слова состояния с плавающей точкой |
tan | вычисление тангенса |
tanh | вычисление гиперболического тангенса |
В библиотеке определен также ряд констант, таких как M_PI (число π), M_E (основание натурального логарифма e) и др.
Дата добавления: 2015-10-09; просмотров: 1741;