Типы с явным указанием размера

Типы с явным указанием размера

Часто при программировании необходимы типы данных заданного размера. Обычно это необходимо для удовлетворения некоторых внешних требований, связанных с аппаратным обеспечением, сетью или бинарной совместимостью. Например, звуковой адаптер может иметь 32-разрядный регистр, пакет сетевого протокола — 16-разрядное поле данных, а исполняемый файл — 8 битовый идентификатор cookie. В этих случаях тип, который представляет данные, должен иметь точно заданный размер.

В ядре типы данных явно заданного размера определены в файле <asm/types.h>, который включается из файла <linux/types.h>. В табл. 19.2 приведен полный список таких типов данных.

Таблица 19.2. Типы данных явно заданного размера

Тип Описание
s8 байт со знаком
u8 байт без знака
s16 16-разрядное целое число со знаком
u16 16-разрядное целое число без знака
s32 32-разрядное целое число со знаком
u32 32-разрядное целое число без знака
s64 64-разрядное целое число со знаком
u64 64-разрядное целое число без знака

Варианты со знаком используются редко.

Эти типы данных, с явно заданным размером, просто определены с помощью оператора typedef через стандартные типы данных языка С. Для 64-разрядной машины они могут быть определены следующим образом.

typedef signed char s8;

typedef unsigned char u8;

typedef signed short s16;

typedef unsigned short u16;

typedef signed int s32;

typedef unsigned int u32;

typedef signed long s64;

typedef unsigned long u64;

Для 32-разрядной машины их можно определить, как показано ниже.

typedef signed char s8;

typedef unsigned char u8;

typedef signed short s16;

typedef unsigned short u16;

typedef signed int s32;

typedef unsigned int u32;

typedef signed long long s64;

typedef unsigned long long u64;

Поделитесь на страничке

Следующая глава >

Похожие главы из других книг:

Пример: сервер времени и даты с указанием протокола

Из книги автора

Пример: сервер времени и даты с указанием протокола В листинге 11.7 есть небольшая проблема: первый аргумент функции tcp_listen — пустой указатель, объединенный с семейством адресов AF_UNSPEC, который задает функция tcp_listen, — может заставить функцию getaddrinfo возвратить структуру


6.3.2.3. Изменение размера

Из книги автора

6.3.2.3. Изменение размера Рис. 6.38. Изменение размера изображенияИзменение размера изображения в GIМP называется масштабированием. Выберите инструмент Масштаб (он выделен на рис. 6.38) и щелкните на изображении, размер которого требуется изменить.Раскроется окно Масштаб, в


Обновление размера

Из книги автора

Обновление размера Команда DIMSTYLE с ключом apply обеспечивает обновление размера и вызывается из падающего меню Dimension ? Update или щелчком на пиктограмме Dimension Update на панели инструментов


Типы, характеризуемые значениями, ссылочные типы и оператор присваивания

Из книги автора

Типы, характеризуемые значениями, ссылочные типы и оператор присваивания Теперь изучите следующий метод Main() и рассмотрите его вывод, показанный на рис. 3.12.static void Main(string[] args) { Console.WriteLine("*** Типы, характеризуемые значением / Ссылочные типы ***"); Console.WriteLine(-› Создание p1"); MyPoint


Типы, характеризуемые значениями и содержащие ссылочные типы

Из книги автора

Типы, характеризуемые значениями и содержащие ссылочные типы Теперь, когда вы чувствуете разницу между типами, характеризуемыми значением, и ссылочными типами, давайте рассмотрим более сложный пример. Предположим, что имеется следующий ссылочный тип (класс),


Типы, характеризуемые значениями, и ссылочные типы: заключительные замечания

Из книги автора

Типы, характеризуемые значениями, и ссылочные типы: заключительные замечания Чтобы завершить обсуждение данной темы, изучите информацию табл. 3.8, в которой приводится краткая сводка основных отличий между типами, характеризуемыми значением, и ссылочными типами.Таблица


Редактирование размера

Из книги автора

Редактирование размера Команда DIMEDIT обеспечивает редактирование размера и вызывается щелчком на пиктограмме Dimension Edit панели инструментов Dimension.Запросы команды DIMEDIT:Enter type of dimension editing [Home/New/Rotate/Oblique] <Home>: —выполнить операцию редактирования размеров, указав один из


Обновление размера

Из книги автора

Обновление размера Команда DIMSTYLE с ключом apply обеспечивает обновление размера и вызывается из падающего меню Dimension ? Update или щелчком на пиктограмме Dimension Update на панели инструментов


Редактирование размера

Из книги автора

Редактирование размера Команда DIMEDIT обеспечивает редактирование размера и вызывается щелчком на пиктограмме Dimension Edit на панели инструментов Dimension.Запросы команды


Обновление размера

Из книги автора

Обновление размера Команда -DIMSTYLE с ключом apply обеспечивает обновление размера и вызывается из падающего меню Dimension ? Update или щелчком на пиктограмме Dimension Update на панели инструментов


Стиль размера

Из книги автора

Стиль размера Мы рассмотрели, как создавать и размещать объекты размеров. Однако это только часть процесса. Из данного раздела вы узнаете, как управлять видом размерных объектов, используя стили размера.Стиль размера – совокупность параметров, хранящихся под


2.3.9. Вычисление размера БД

Из книги автора

2.3.9. Вычисление размера БД ERwin позволяет рассчитать приблизительный размер БД в целом, а также таблиц, индексов и других объектов через определенный период времени после начала эксплуатации ИС. Для расчета размеров физических объектов служит диалог Volumetrics Editor (рис. 2.99),


Кафедра Ваннаха: Когда тайное становится явным Ваннах Михаил

Из книги автора

Кафедра Ваннаха: Когда тайное становится явным Ваннах Михаил Опубликовано 15 ноября 2010 года Одна из примет нашего времени — это то, как сугубо технологические достижения формируют повестку новостей «общего интереса». Выстроившиеся за очередным


У11.4 Экспортирование размера

Из книги автора

У11.4 Экспортирование размера Почему capacity экспортируется для реализации стеков ограниченных размеров, класс


Дмитрий Вибе: Когда тайное станет явным Дмитрий Вибе

Из книги автора

Дмитрий Вибе: Когда тайное станет явным Дмитрий Вибе Опубликовано 08 июня 2012 года После моего эпического провала с наблюдениями транзита Венеры хочется написать что-нибудь эпическое. И я решил написать про нашу науку. Точнее, про то, чем она


Дмитрий Вибе: Когда тайное станет явным

Из книги автора

Дмитрий Вибе: Когда тайное станет явным Автор: Дмитрий ВибеОпубликовано 08 июня 2012 годаПосле моего эпического провала с наблюдениями транзита Венеры хочется написать что-нибудь эпическое. И я решил написать про нашу науку. Точнее, про то, чем она занимается. Точнее, про то,