Символьный тип: различия между версиями

1101 байт убрано ,  8 лет назад
нет описания правки
[непроверенная версия][отпатрулированная версия]
Нет описания правки
 
== Язык 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>.
4

правки