1.1.2. Язык C. Основные типы данных. Базовый набор операций. Операторы разветвления и циклов
Основные типы данных:
· символ – char – целое число, представляющее код символа. Размер – 1 байт, диапазон значений – от –128 до 127. 0 в старшем бите соответствует положительному числу, 1 – отрицательному. Строки представляются как массивы символов: например, char a[5] объявляет строку a из 4 символов (5-й байт – для нулевого символа '\0', обозначающего конец строки);
· целое число – int. Размер определяется длиной машинного слова. В зависимости от архитектуры компьютера этот тип может совпадать с short int или long int;
· короткое целое – short int (или просто short). Размер – 2 байта, диапазон значений – от –32 768 до 32 767;
· длинное целое – long int (или просто long). Размер – 4 байта, диапазон значений – от –2 147 483 648 до 2 147 483 647;
· число с плавающей точкой одинарной точности – float. Размер – 4 байта, из них 1 бит отводится на знак числа, 8 бит – на его порядок, 23 бита – на мантиссу. Диапазон модуля значений – приблизительно от 3,4×10-38 до 3,4×1038;
· число с плавающей точкой двойной точности – double. Размер – 8 байт, из них 1 бит отводится на знак числа, 11 бит – на его порядок, 52 бита – на мантиссу. Диапазон модуля значений – приблизительно от 1,7×10-308 до 1,7×10308;
· пустое значение – void. Применяется в функциях, не возвращающих никакого значения.
Перед char, int, short и long может стоять ключевое слово unsigned, обозначающее неотрицательное число того же размера. Например, unsigned char может содержать целые числа от 0 до 255.
В классическом C, в отличие от последних версий и C++, нет булева типа данных. Вместо этого при логических операциях осуществляется сравнение с нулём (0 – ложь, не 0 – истина). В C++ появился тип bool, переменные которого могут принимать значения true или false и занимают 1 байт.
Для записи десятичных дробей используется точка. Символы заключаются в одинарные кавычки ('), а строки символов – в двойные (").
Базовый набор операций:
Приоритет |
Ассоциативность |
Операции |
Содержание |
1 |
Слева направо |
() |
Скобки |
x[y] |
Доступ к элементу массива |
||
x.y |
Доступ к элементу структуры |
||
x -> y |
Доступ к элементу структуры (x – указатель) |
||
2 |
Справа налево |
&x |
Операция адресации |
*x |
Операция разыменования |
||
sizeof(x) |
Размер операнда в байтах (x – название типа данных) |
||
++x x++ --x x-- |
x увеличивается или уменьшается на 1 перед (если знак слева) или после (если знак справа) вычисления всего выражения |
||
+x |
Унарный плюс (подтверждение знака) |
||
-x |
Унарный минус (изменение знака) |
||
~x |
Поразрядное отрицание |
||
!x |
Логическое отрицание |
||
3 |
Слева направо |
x * y |
Умножение |
x / y |
Деление |
||
x % y |
Вычисление остатка от деления (операнды должны быть целыми) |
||
4 |
Слева направо |
x + y |
Сложение |
x - y |
Вычитание |
||
5 |
Слева направо |
x << y |
Поразрядный сдвиг влево: сдвигает биты левого операнда на число разрядов, указанное правым операндом; левые биты теряются, а правые заполняются нулями |
x >> y |
Поразрядный сдвиг вправо: сдвигает биты левого операнда на число разрядов, указанное правым операндом; правые биты теряются, а левые заполняются символом знака |
||
6 |
Слева направо |
x < y |
Проверка условия x<y |
x > y |
Проверка условия x>y |
||
x <= y |
Проверка условия x≤y |
||
x >= y |
Проверка условия x≥y |
||
7 |
Слева направо |
x == y |
Проверка условия x=y |
x != y |
Проверка условия x≠y |
||
8 |
Слева направо |
x & y |
Поразрядное И |
9 |
Слева направо |
x ^ y |
Поразрядное исключающее ИЛИ |
10 |
Слева направо |
x | y |
Поразрядное ИЛИ |
11 |
Слева направо |
x && y |
Логическое И |
12 |
Слева направо |
x || y |
Логическое ИЛИ |
13 |
Справа налево |
x ? y : z |
x – условие, y – значение выражения, если условие истинно, z – если ложно |
14 |
Справа налево |
x = y |
Присваивание переменной x значения y |
x += y x -= y x *= y x /= y x %= y x <<= y x >>= y x &= y x ^= y x |= y |
x += y равносильно присваиванию x = x + y, и т. п. |
||
15 |
Слева направо |
x, y |
Соединяет два выражения, которые вычисляются последовательно. Возвращает результат выражения y |
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.