Тип переменной или константы
Каждая переменная должна иметь тип, определяющий, какого рода информация в ней хранится. Типом переменной может быть число, строка и всевозможные сложные структуры. Пока рассмотрим простые типы.
Для объявления простых числовых типов см. табл. 2.2. можно использовать ключевые слова: signed - знаковый, unsigned- беззнаковый, short -короткое, long - длинно и double – двойное. Ключевое слово signed можно не писать, т.к. по умолчанию оно добавляется к основным типам языка. Язык С++ имеет следующие простые типы: char – символьный, int –целый, float – вещественный и double – вещественное двойной длины.
Таблица 2.2.
Простые типы данных алгоритмических языков С и С++
Тип данных | число бит | Диапазон значений | |
char | Символьный | –128 .. 127 | |
unsigned char | Без знака символьный | 0 .. 255 | |
short int | Без знака целый короткой длины | –32768 .. 32767 | |
unsigned int | Без знака целый | 0 .. 4294967295 | |
int | Целый | –2147483648 .. 2147483647 | |
long | Целый двойной длины | –2147483648 .. 2147483647 | |
unsigned long | Без знака целый двойной длины | 0 .. 4294967295 | |
long long int | Целый дважды двойной длины | –(263–1) .. 263–1 | |
unsigned long long int | Без знака целый дважды двойной длины | 0 .. 264–1 | |
float | Вещественный | 3.4E–38 .. 3.4E38 | |
double | Вещественный двойной длины | 1.7E–308 .. 1.7E308 | |
long double | Вещественный дважды двойной длины | 3.4E–4932 .. 3.4E4932 | |
_Bool | Логический | true(1), false(0) |
Замечание. Язык C++ Builder поддерживает все типы данных языка С++, однако имеет тесные дружеские контакты с языком Delphi, существует правила перехода и преобразования о которых пойдет речь ниже.
C++Builder не позволяет посредством известного ключевого слова typedef просто переопределить некоторые сложные типы данных Объектного Паскаля. C++Builder реализует такие расширенные типы в виде обычных или шаблонных классов (template class). Каждый такой класс (о классах речь пойдет потом) содержит все необходимые конструкторы, деструкторы, свойства и объектные методы. Многие компоненты VCL используют реализацию расширенных типов, а кроме того, они требуются при разработке новых компонент на базе оригиналов из Delphi.
Ниже приводится сводная таблица 2.3. встроенных типов Delphi и соответствующих им типов C++Builder:
Таблица 2.3.
Встроенные типы Delphi и соответствующие им типы C++Builder
Delphi | Длина и значения | C++Builder | Реализация |
Shortint | 8-битовое целое | char | typedef |
Smallint | 16-битовое целое | short | typedef |
Longint | 32-битовое целое | long | typedef |
Byte | 8-битовое целое без знака | unsigned char | typedef |
Word | 16-битовое целое без знака | unsigned short | typedef |
Integer | 32-битовое целое | int | typedef |
Cardinal | 32-битовое целое без знака | unsigned long | typedef |
Boolean | true/false | bool | typedef |
ByteBool | true/false или 8-битовое целое без знака | unsigned char | typedef |
WordBool | true/false или 16-битовое целое без знака | unsigned short | typedef |
LongBool | true/false или 32-битовое целое без знака | unsigned long | typedef |
AnsiChar | 8-битовый символ без знака | unsigned char | typedef |
WideChar | Слово - символ Unicode | wchar t | typedef |
Char | 8-битовый символ | char | typedef |
String | Текстовая строка Delphi | AnsiString | typedef |
Single | 32-битовое плавающее число | float | typedef |
Double | 64-битовое плавающее число | double | typedef |
Extended | 80-битовое плавающее число | long double | typedef |
Real | 32-битовое плавающее число | float | typedef |
Comp | 64-битовое плавающее число | double | typedef |
Pointer | 32-битовый указатель | void * | typedef |
PChar | 32-битовый указатель на символы без знака | unsigned char * | typedef |
PansiChar | 32-битовый указатель на ANSI символы без знака | unsigned char * | typedef |
Set | Множество 1..32 байт | Set<type, minval, maxval> | template class |
AnsiString | Текстовая строка Delphi | AnsiString | class |
Variant | Вариантное значение, 16 байт | Variant | class |
TdateTime | Значение даты и времени, 64-битовое плавающее число | TDateTime | class |
Currency | Валюта, 64-битовое плавающее число, 4 цифры после точки | Currency | class |
Дата добавления: 2015-10-09; просмотров: 698;