- stddef.h
-
Стандартная библиотека
языка программирования Сstddef.h — заголовочный файл стандартной библиотеки языка программирования С, определяющий макросы NULL и offsetof, а также типы ptrdiff_t, wchar_t и size_t.
Содержание
Включение
В Си включение производится с помощью заголовочного файла «stddef.h»:
#include <stddef.h>
С++ также позволяет использовать заголовочный файл «cstddef»:
#include <cstddef>
Пространство имён
Типы, определяемые заголовочным файлом «stddef.h», расположены в глобальном пространстве. «cstddef» размещает типы size_t и ptrdiff_t в пространстве имён std.
NULL
Макроопределение, которое раскрывается в константный нулевой указатетель. Оно может быть определено как ((void*)0), 0 или 0L, в зависимости от компилятора и языка.
offsetof(type, member)
Функциональный макрос, позволяющий определить смещение в байтах некоторого поля данных для указанного структурного типа.
Тип size_t
Тип size_t представляет подходящий тип для представления размера объектов в областях памяти, а также для хранения указателей при разыменовании элементов массива. Его размер зависит от реализации: на 32-битных платформах его размер может составлять 32 бита, на 64-битных — 64 бита соответственно. Тип size_t является беззнаковым. Этот тип является результатом операнда sizeof[1].
В некоторых реализациях также существует знаковый тип ssize_t, определённый в заголовочном файле UNIX «unistd.h». Для GNU C тип ssize_t определён в файле «stddef.h» и, следовательно, находится в том же файле, что и size_t.
Тип wchar_t
Реализация широкосимвольного типа, предопределённого в С++, но требующего включение «stddef.h» или «wchar.h» в языке программирования Си.
Тип ptrdiff_t
Тип ptrdiff_t является типом, позволяющим хранить разность между двумя указателями. Размерность типа ptrdiff_t также зависит от реализации.
Ссылки
- stddef.h в стандарте Single UNIX Specification 2
- stddef.h на CPlusPlus.com
Примечания
Категория:- Стандартные библиотечные заголовки языка Си
Wikimedia Foundation. 2010.