Учебное пособие Самара 2015 + 004. 43 Ббк 32. 973 Н 19


Download 1.98 Mb.
bet7/53
Sana15.08.2023
Hajmi1.98 Mb.
#1667321
TuriУчебное пособие
1   2   3   4   5   6   7   8   9   10   ...   53
Bog'liq
Lekcii AiSD 2015

Меречиспяемый тип данных

Любой новый простейший тип определяется простым пере- числением входящих в него различных значений. Такой тип на- зывается перечисляемым. Его определение, например, на языках Си/Си++, имеет следующий вид:


enum Seasons {winter, spring, summer, autumn}
s 1, s2 i
Имена в перечислении Seasons — целые константы: winter = 0,
spring = 1 и т.д.
enum days {Su=5, Мо, Tu, We=11, Th, Fr, Sa};



        1. Стандартные типы данных

К простейшим стандартным типам относятся целые числа, логические значения, символы, вещественные числа. Иногда все перечисленные типы, кроме вещественных, называют инте-



          1. Целочисленные типы

ЭВМ оперирует с числами, содержащими конечное число разрядов. Возможны следующие типы чисел:


Целые двоичные числа длиной 8, 16 и 32 и двоично- кодированные десятичные числа длиной 8 бит. Двоичные числа допускают интерпретацию как целых без знака и целых со зна- ком, а десятичные числа знака не имеют. В двоичных целых чис- лах без знака все разряды считаются значащими и диапазон пред- ставляемых чисел составляет 0. . .255 для чисел длиной 8 бит и
0. . .65535 для чисел длиной 16 бит.
Все разряды числа являются значащими, а двоичная точка находится справа или, как говорят, фиксирована после младшего значащего разряда. Отсюда появляется еще одно название этого формата и других аналогичных форматов формат с фиксиро- ванной точкой. Следовательно, в этом формате представимы

22
только целые числа 0, 1, 2, ..., 2‘—1 и любая комбинация битов (двоичный набор) является допустимой.


Среди стандартных типов языков программирования может быть целый набор целочисленных типов, например, в Си/Си++:

char


символьный тип (целочисленный)

in L а ; // знаковый целый тип in L b , с i // знаковый целый тип
Переменные беззнаковых типов должны быть явно указаны как
беззнаковые:
on siqned che г k2 ; // беззнаковый символьный тип (1
байт)
uns iqned in L d; // беззнаковый целый тип (2 — 4 байта, в
зависимости от разрядности ЭВМ)
on siqned е i // беззнаковый целый тип
on siqned 1onq int а 1i // беззнаковый длинный целый
тип ( не короче 4-х байт)
on siqned 1onq a 2 ; // беззнаковый длинный целый тип
un siqned shoп int s 1; // беззнаковый короткий це—
лый тип (не длиннее 2-х байт)
un ь iqned sheп s 1; // беззнаковый короткий целый тип Символьные типы языков Си/Си++ также являются целочислен- ными и имеют размер в 1 байт.
Целые знаковые двоичные числа. Чтобы компьютеры мог- ли оперировать положительными и отрицательными числами, один из разрядов необходимо отвести для изображения знака чи— сел Ѕ. Обычно им является старший (левый) бит, а стандартное кодирование имеет такой вид: S=0 — число положительное; S=1 число отрицательное.
В языках Си/Си++ знаковые типы могут быть явно указаны:
siqned oh ar k1 ; // знаковый символьный тип
siqned in L а ; // знаковый целый тип
но в большинстве случаев в этом нет необходимости:
char
inb b, с i // знаковый целый тип (слово signed можно не указывать)
long int alpha; /знаковыйдлинныи целыйтнп
23

long beta i // знаковый длинный целый тип (слова іиІ
можно не указывать)
shoп in L qamma ; // знаковый короткий целый тип shoп de 14a ; // знаковый короткий целый тип
Для 64—разрядных процессоров семейства х86 в более новых
версиях языка Си++ используется 64—разрядный целочисленный тип 1onq 1onq in L , в ранних версиях языка обозначавшийся xox int64.




          1. Download 1.98 Mb.

            Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10   ...   53




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling