Книга: Разработка ядра Linux
Знак типа данных char
Знак типа данных char
В стандарте языка С сказано, что тип данных char
может быть со знаком или без знака. Ответственность за определение того, какой вариант типа данных char
использовать по умолчанию, лежит на компиляторе, препроцессоре или на обоих.
Для большинства аппаратных платформ тип char
является знаковым, а диапазон значений данных этого типа от -128 до 127. Для небольшого количества аппаратных платформ, таких как ARM, тип char
по умолчанию без знака, а возможные значения данных этого типа лежат в диапазоне от 0 до 255.
Например, для систем, на которых тип char
без знака, выполнение следующего кода приведет к записи в переменную i
числа 255 вместо -1.
char i = -1;
На других машинах, где тип char
является знаковым, этот код выполнится правильно и в переменную i запишется значение -1. Если действительно нужно, чтобы в любом случае было записано значение -1, то предыдущий код должен выглядеть следующим образом.
signed char i = -1;
Если в вашем коде используется тип данных char
, то следует помнить, что этот тип может на самом деле быть как signed char
, так и unsigned char
. Если необходим строго определенный вариант, то это нужно явно декларировать.
- Базовые типы данных
- Типы данных
- Тип данных char
- 3.2. Типы данных в Си
- Резервное копирование базы данных InterBase
- Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ
- Резервное копирование многофайловых баз данных
- Восстановление из резервных копий многофайловых баз данных
- Владелец базы данных
- ЧАСТЬ IV. База данных и ее объекты.
- Перевод базы данных InterBase 6.x на 3-й диалект
- Типы данных для работы с датой и временем