EnglishРусский  

   Приложение

Реклама

Инсталлятор CreateInstall
Бесплатные и коммерческие инсталляторы

Типы и переменные

Gentee - язык строгой типизации, поэтому типы занимают очень важное место при программировании на Gentee. Все типы можно разбить на две три группы: числовые типы, структурные типы и тип reserved.

Числовые типы

Все числовые типы встроены в язык. uint является самым распространенным числовым типом. В языке Gentee нет указателей и логического типа, их функции выполняет тип uint. Типы byte, ubyte, short, ushort при выполнении арифметических операций рассматриваются как типы int или uint, в зависимости от знака. Если вы будете указывать их в качестве полей в структурных типах, то они будут занимать соответствующее количество байт.

Имя типаРазмерМинимумМаксимумПримечание
Целочисленные типы
byte1(4)-128+127знаковый
ubyte1(4)0+255беззнаковый
short2(4)-32768+32767знаковый
ushort2(4)0+65535беззнаковый
int4-2147483648+2147483647знаковый
uint40+4294967295беззнаковый
long8-2^63+2^63 - 1знаковый
ulong80+2^64 - 1беззнаковый
Числа с плавающей точкой
float4(+ или -)10E-37(+ или -)10E38   ;
double8(+ или -)10E-307(+ или -)10E308   

Структурные типы

Структурные типы описываются командой type. При этом типы строка ( str), буфер (buf), коллекция (collection) встроены в язык. Много типов определено в стандартной и прочих библиотеках (массивы, хэш-таблицы и т.д.).

Тип reserved

Тип reserved является особым типом и не принадлежит ни к числовым, ни к структурным типам. Он представляет собой массив байтов и описывается и используется как массив. Его особенность в том, что резервируется область памяти в том месте, где он описан. Например, можно указать поле в структуре reserved field[50]. Это означает, что в структуре будет зарезервирована область размером 50 байт. Если мы опишем это же самое внутри функции, то мы отведем 50 байт в стэке для данной локальной переменной. Резервируемый размер ограничен 65535 байтами. Для указания размера нельзя использовать выражение, в квадратных скобках должно стоять число.

Редактировать