Символьный тип: различия между версиями
[непроверенная версия] | [отпатрулированная версия] |
Rndstr (обсуждение | вклад) |
Rndstr (обсуждение | вклад) Нет описания правки |
||
Строка 2: | Строка 2: | ||
== Язык C == |
== Язык C == |
||
В языке Си размер типа равен одному байту.<ref name="Pod`ebelsky">''Подбельский В. В. Программирование на языке Си, стр. 23-25''</ref> В общем случае размер типа <code>char</code> на конкретной платформе регулируется значением константы <code>CHAR_BITS</code>, определённой в заголовочном файле [[limits.h]]. По умолчанию и на платформах [[x86]] она равна 8. <code>Char</code> может вмещать максимум один символ. |
|||
Большинство компиляторов языка Си устанавливают размер символьного типа char равен одному байту. В стандарте языка Си ограничение на размер этого типа данных указано следующим образом: "Объект, объявленный имеющим тип char, должен иметь достаточный для хранения базового набора символов выполнения размер." Базовый набор символов выполнения (basic execution |
|||
character set) включает в себя следующие символы: 52 латинские буквы от a до z верхнего и нижнего регистра, 10 цифр от нуля до девяти, следующие 29 символов '''!;"<#=%>&?'[()]*^+_{},-|.\/~:''', а также пробел, horizontal tab, vertical tab, form feed - всего 95. <ref name="ISOC">''ISO/IEC 9899:1999''</ref> Таким образом, нижняя граница размера для типа данных char равна 7 битам, но на практике разработчики компиляторов берут размер, равный одному байту. Размер типа <code>char</code> на конкретной платформе регулируется значением константы <code>CHAR_BITS</code>, определённой в заголовочном файле [[limits.h]]. По умолчанию и на платформах [[x86]] она равна 8. <code>Char</code> может вмещать максимум один символ. |
|||
Если <code>char</code> определён как <code>signed</code> (знаковый), то его диапазон значений составляет от −128 до 127 (может быть на единицу дальше в положительную сторону, в зависимости от реализации). Если он определён как <code>unsigned</code> (беззнаковый), то его значения могут составлять от 0 до 255. Значение, содержащееся в этом типе, можно всегда безопасно привести к значению типа [[int]]. В [[Си (язык программирования)|Си]] нет примитивных типов для работы со строками, поэтому для работы с ними используется [[Указатель (тип данных)|указатель]] <code>char *</code>. |
Если <code>char</code> определён как <code>signed</code> (знаковый), то его диапазон значений составляет от −128 до 127 (может быть на единицу дальше в положительную сторону, в зависимости от реализации). Если он определён как <code>unsigned</code> (беззнаковый), то его значения могут составлять от 0 до 255. Значение, содержащееся в этом типе, можно всегда безопасно привести к значению типа [[int]]. В [[Си (язык программирования)|Си]] нет примитивных типов для работы со строками, поэтому для работы с ними используется [[Указатель (тип данных)|указатель]] <code>char *</code>. |
Версия от 02:16, 22 мая 2014
Символьный тип (Сhar) — простой тип данных, предназначенный для хранения одного символа (управляющего или печатного) в определённой кодировке. Может являться как однобайтовым (для стандартной таблицы символов), так и многобайтовым (к примеру, для Юникода). Основным применением является обращение к отдельным знакам строки.
Язык C
В языке Си размер типа равен одному байту.[1] В общем случае размер типа char
на конкретной платформе регулируется значением константы CHAR_BITS
, определённой в заголовочном файле limits.h. По умолчанию и на платформах x86 она равна 8. Char
может вмещать максимум один символ.
Если char
определён как signed
(знаковый), то его диапазон значений составляет от −128 до 127 (может быть на единицу дальше в положительную сторону, в зависимости от реализации). Если он определён как unsigned
(беззнаковый), то его значения могут составлять от 0 до 255. Значение, содержащееся в этом типе, можно всегда безопасно привести к значению типа int. В Си нет примитивных типов для работы со строками, поэтому для работы с ними используется указатель char *
.
Литература
- Подбельский В. В. «Программирование на языке Си»
Примечания
- ↑ Подбельский В. В. Программирование на языке Си, стр. 23-25
Это заготовка статьи о компьютерных языках. Помогите Википедии, дополнив её. |