Тема 10. Константы и переменные в С++. Преобразование типов данных.
Константы можно использовать в любых операторах и выражениях. Существует 4 типа констант:
- целые (16, -7);
- константы с плавающей запятой (2.3, 2E12, -2.3e4);
- символьные (‘A’, ‘\0’, ‘007’) и строковые (“Строка”);
- перечисляемые константы (enum color {red, yellow, green}; переменная color принимает константные значения red, yellow, green )
Основные правила:
- Восмеричные числа начинаются с нуля (023).
- Шестнадцатеричные числа начианются с 0х или 0Х (0Х12FC, 0x12ad)
- Сивмольные константы заключаются в одинарные кавычки.
- Строковые константы заключаются в двойные кавычки.
- \0 - нулевой символ.
- \” символ кавычки.
- \t символ табуляции
- \n символ перевода строки
- \\ соответствует символу \
Для задания имени константы нужно использовать модификатор const:
Const тип имя_константы = значение
Например: const float Pi = 3.14. В последующем везде, где используется Pi, будет подразумеваться значение 3.14.
Переменные
Переменная является идентификатором, обозначающим область в памяти где храниться значение переменной и значение которой может менять во время выполнения приложения.
Переменная объявляется следующим способом:
тип переменная1, перемменная2,…
пример:
int x1, Y2=12, z=Y2-10;
Объявлять переменную можно в любом месте программы, но перед первым использованием.
Основные типы переменных:
Тип данных |
Размер памяти, бит |
Диапазон значений |
char (символьный) |
8 |
от–128 до 127 |
signed char (знаковый символьный) |
8 |
от–128 до 127 |
unsigned char (беззнаковый символьный) |
8 |
от 0 до 255 |
short int (короткое целое) |
16 |
от–32768 до 32767 |
unsigned int (беззнаковое целое) |
16 |
от 0 до 65535 (16-битная платформа) |
от 0 до 4294967295 (32-битная платформа) |
||
int (целое) |
16 |
от–32768 до 32767 (16-битная платформа) |
32 |
от –2147483648 до 2147483647 (32-битная платформа) |
|
long (длинное целое) |
32 |
от–2147483648 до 2147483647 |
unsigned long (длинное целое без знака) |
32 |
от 0 до 4294967295 |
float (вещественное) |
32 |
от 3.4E–38 до 3.4E38 |
double (двойное вещественное) |
64 |
от 1.7E–308 до 1.7E308 |
long double (длинное вещественное) |
80 |
от 3.4E–4932 до 3.4E4932 |
bool (C++) |
8 |
true(1), false(0) |
Переменные, объявленные внутри функции, называются локальными. Их могут использовать инструкции расположенные только внутри самой функции.
Глобальные переменные объявляются вне всех функций. Доступ к этим переменным возможен из любой функции.
Преобразование типов данных
В С++ Builder часто приходится использовать функции преобразования различных типов данных в строковые типы и наоборот. Рассмотрим некоторые из этих функций.
- FloatToStr(Extended Value) – преобразование числа с плавающей запятой Value в строку.
- IntToStr(int Value – преобразование целого числа Value в строку.
- StrToFloat(UnicodeString S) – преобразование строки S в число с плавающей запятой.
- StrToInt(UnicodeString S) –преобразование строки в число целого типа.
- Date(void) - возвращает текущую системную дату.
- Time(void) - возвращает текущее системное время.
- DateTimeToStr(System::TDateTime DateTime) -преобразует DateTime в строку.
- DateToStr(System::TDateTime Date)- преобразует дату Date в строку.
- StrToDate(const System::UnicodeString S) - преобразует строку S в дату TDateTime.
- StrToDateTime(const System::AnsiString S)-преобразует строку S в дату и время TDateTime.