Объекты языка Си и их типы
Программа, написанная на языке Си, оперирует с объектами. Каждый объект имеет имя и тип. Указание типа необходимо для того, чтобы было известно, сколько места в оперативной памяти будет занимать данный объект. Обращение к объекту программы осуществляется по его имени (идентификатору).
Имя объекта – это последовательность не более 32 символов а—z, A—Z, О—9 и «_» (подчеркивания). Начальный символ имени не должен быть цифрой. Несмотря на то, что допускается имя, имеющее до 32 символов, определяющее значение имеют только первые 8 символов.
Основные типы и размеры данных
В памяти типовой компьютерной системы целое число представлено в виде цепочки битов фиксированного (кратного 8) размера. Эта последовательность нулей и единиц не что иное, как двоичная запись числа, поскольку обычно для представления чисел в современной компьютерной технике используется позиционный двоичный код. Диапазон целых чисел, как правило, определяется количеством байтов в памяти компьютера, отводимых под одну переменную.
Тип |
Название |
Количество байт |
Применение |
char |
символьный |
1 |
используется для описания символьных объектов |
int |
целый |
2-4 |
для описания объектов, значения которых выражаются целыми числами |
short |
короткий целый |
2 | |
long |
длинный целый |
4-8 | |
float |
числа с плавающей точкой |
4 |
для объектов, значения которых выражаются действительными (вещественными) числами |
double |
числа с плавающей точкой двойной точности |
8 |
Важно!!! Описание объекта должно предшествовать его использованию в программе, например: int n; float x; char a;
Бит |
Байт |
Дв. слов |
Максимальное десятичное |
Дес. цифр |
4 |
½ |
⅛ |
15 -8 +7 |
2 1 1 |
8 |
1 |
¼ |
255 -128 +127 |
3 3 3 |
16 |
2 |
½ |
65.535 -32.768 +32.767 |
5 5 5 |
24 |
3 |
¾ |
16.777.215 -8.388.608 +8.388.607 |
8 7 7 |
32 |
4 |
1 |
4.294.967.295 -2.147.483.648 +2.147.483.647 |
10 10 10 |
48 |
6 |
1½ |
281.474.976.710.655 -140.737.488.355.328 +140.737.488.355.327 |
15 15 15 |
64 |
8 |
2 |
18.446.744.073.709.551.615 -9.223.372.036.854.775.808 +9.223.372.036.854.775.807 |
20 19 19 |
96 |
12 |
3 |
79.228.162.514.264.337.593.543.950.335 -39.614.081.257.132.168.796.771.975.168 +39.614.081.257.132.168.796.771.975.167 |
29 29 29 |
128 |
16 |
4 |
340.282.366.920.938.463.463.374.607.431.768.211.455 -170.141.183.460.469.231.731.687.303.715.884.105.728 +170.141.183.460.469.231.731.687.303.715.884.105.727 |
39 39 39 |
256 |
32 |
8 |
115.792.089.237.316.195.(...).584.007.913.129.639.935 -57.896.044.618.658.097.(...).792.003.956.564.819.968 +57.896.044.618.658.097.(...).792.003.956.564.819.967 |
78 77 77 |
512 |
64 |
16 |
13.407.807.929.942.597.099.(...).946.433.649.006.084.095 -6.703.903.964.971.298.549.(...).973.216.824.503.042.048 +6.703.903.964.971.298.549.(...).973.216.824.503.042.047 |
155 154 154 |
1.024 |
128 |
32 |
179.769.313.486.231.590.(...).356.329.624.224.137.215 -89.884.656.743.115.795.(...).678.164.812.112.068.608 +89.884.656.743.115.795.(...).678.164.812.112.068.607 |
309 308 308 |
2.048 |
256 |
64 |
32.317.006.071.311.007.(...).853.611.059.596.230.655 -16.158.503.035.655.503.(...).926.805.529.798.115.328 +16.158.503.035.655.503.(...).926.805.529.798.115.327 |
617 617 617 |
4.096 |
512 |
128 |
1.044.388.881.413.152.506.(...).708.340.403.154.190.335 -522.194.440.706.576.253.(...).354.170.201.577.095.168 +522.194.440.706.576.253.(...).354.170.201.577.095.167 |
1.234 1.233 1.233 |