Тип char
Тип int
Выражения
Условная операция.
В отличие от унарных и бинарных операций в условной операции используется три операнда. Форма представления:
Выражение1 ? Выражение2 : Выражение3;
Первым вычисляется значение выражения1. Если оно истинно, то вычисляется значение выражения2, которое становится результатом.
Если при вычислении выражения1 получится 0, то в качестве результата берется значение выражения3.
Пример 14. Условная операция
x<0 ? -x : x ; //вычисляется абсолютное значение x.
Из констант, переменных, разделителей и знаков операций можно конструировать выражения.
Приоритеты операций в выражениях представлены в табл. 3.
Таблица 3
Приоритеты операций в выражениях
Ранг | Операции |
( ) [ ] -> . | |
! ~ - ++ -- & * (тип) sizeof тип( ) | |
* / % (мультипликативные бинарные) | |
+ - (аддитивные бинарные) | |
<< >> (поразрядного сдвига) | |
< > <= >= (отношения) | |
== != (отношения) | |
& (поразрядная конъюнкция «И») | |
^ (поразрядное исключающее «ИЛИ») | |
| (поразрядная дизъюнкция «ИЛИ») | |
&& (конъюнкция «И») | |
|| (дизъюнкция «ИЛИ») | |
?: (условная операция) | |
= *= /= %= -= &= ^= |= <<= >>= (операция присваивания) | |
, (операция запятая) |
4.3.3. Типы данных в C++
Типы C++ можно разделить на простые и составные. К простым типам относят типы, которые характеризуются одним значением.
В C++ определены следующие простые типы данных:
int (целый)
char (символьный)
bool (логический)
float(вещественный)
double (вещественный с двойной точностью)
Логические, символьные и целые типы все вместе обобщённо называются целыми (строго говоря, интегральными) типами. Целые типы совместно с типами с плавающей точкой называются арифметическими типами.
Существует 4 спецификатора типа, уточняющих внутреннее представление и диапазон стандартных типов:
1) short (короткий)
2) long (длинный)
3) signed (знаковый)
4) unsigned(беззнаковый)
Для 16-разрядного процессора под него отводится 2 байта, для 32-разрядного – 4 байта.
short int – занимает 2 байта, следовательно, имеет диапазон:
–32768 ... +32767;
long int – занимает 4 байта, следовательно, имеет диапазон:
–2 147 483 648 ... +2 147 483 647
Модификаторы signed и unsigned также влияют на множество допустимых значений, которые может принимать объект:
unsigned short int – занимает 2 байта, следовательно, имеет диапазон:
0 … 65536;
unsigned long int – занимает 4 байта, следовательно, имеет диапазон:
0 ... +4 294 967 295.
Каждому символу ставится в соответствие число, которое называется кодом символа (American Standard Code for International Interchange, ASCII).
Под величину символьного типа отводится 1 байт. Тип char может использоваться со спецификаторами signed и unsigned.
В данных типа signed char можно хранить значения в диапазоне от –128 до 127. При использовании типа unsigned char - от 0 до 255.