Report a bug
If you spot a problem with this page, click here to create a Bugzilla issue.
Improve this page
Quickly fork, edit online, and submit a pull request for this page. Requires a signed-in GitHub account. This works well for small changes. If you'd like to make larger changes you may want to consider using a local clone.


D header file for C99.
This module contains bindings to selected types and functions from the standard C header <stdint.h>. Note that this is not automatically generated, and may omit some types/functions from the original C header.
Distributed under the Boost Software License 1.0. (See accompanying file LICENSE)
Sean Kelly
ISO/IEC 9899:1999 (E)
alias int8_t = byte;
alias int16_t = short;
alias int32_t = int;
alias int64_t = long;
alias uint8_t = ubyte;
alias uint16_t = ushort;
alias uint32_t = uint;
alias uint64_t = ulong;
alias int_least8_t = byte;
alias int_least16_t = short;
alias int_least32_t = int;
alias int_least64_t = long;
alias uint_least8_t = ubyte;
alias uint_least16_t = ushort;
alias uint_least32_t = uint;
alias uint_least64_t = ulong;
alias int_fast8_t = byte;
alias int_fast16_t = int;
alias int_fast32_t = int;
alias int_fast64_t = long;
alias uint_fast8_t = ubyte;
alias uint_fast16_t = uint;
alias uint_fast32_t = uint;
alias uint_fast64_t = ulong;
alias intptr_t = long;
alias uintptr_t = ulong;
alias intmax_t = long;
alias uintmax_t = ulong;
enum int8_t INT8_MIN;
enum int8_t INT8_MAX;
enum int16_t INT16_MIN;
enum int16_t INT16_MAX;
enum int32_t INT32_MIN;
enum int32_t INT32_MAX;
enum int64_t INT64_MIN;
enum int64_t INT64_MAX;
enum uint8_t UINT8_MAX;
enum uint16_t UINT16_MAX;
enum uint32_t UINT32_MAX;
enum uint64_t UINT64_MAX;
enum int_least8_t INT_LEAST8_MIN;
enum int_least8_t INT_LEAST8_MAX;
enum int_least16_t INT_LEAST16_MIN;
enum int_least16_t INT_LEAST16_MAX;
enum int_least32_t INT_LEAST32_MIN;
enum int_least32_t INT_LEAST32_MAX;
enum int_least64_t INT_LEAST64_MIN;
enum int_least64_t INT_LEAST64_MAX;
enum uint_least8_t UINT_LEAST8_MAX;
enum uint_least16_t UINT_LEAST16_MAX;
enum uint_least32_t UINT_LEAST32_MAX;
enum uint_least64_t UINT_LEAST64_MAX;
enum int_fast8_t INT_FAST8_MIN;
enum int_fast8_t INT_FAST8_MAX;
enum int_fast16_t INT_FAST16_MIN;
enum int_fast16_t INT_FAST16_MAX;
enum int_fast32_t INT_FAST32_MIN;
enum int_fast32_t INT_FAST32_MAX;
enum int_fast64_t INT_FAST64_MIN;
enum int_fast64_t INT_FAST64_MAX;
enum uint_fast8_t UINT_FAST8_MAX;
enum uint_fast16_t UINT_FAST16_MAX;
enum uint_fast32_t UINT_FAST32_MAX;
enum uint_fast64_t UINT_FAST64_MAX;
enum intptr_t INTPTR_MIN;
enum intptr_t INTPTR_MAX;
enum uintptr_t UINTPTR_MIN;
enum uintptr_t UINTPTR_MAX;
enum intmax_t INTMAX_MIN;
enum intmax_t INTMAX_MAX;
enum uintmax_t UINTMAX_MAX;
enum ptrdiff_t PTRDIFF_MIN;
enum ptrdiff_t PTRDIFF_MAX;
enum sig_atomic_t SIG_ATOMIC_MIN;
enum sig_atomic_t SIG_ATOMIC_MAX;
enum size_t SIZE_MAX;
enum wchar_t WCHAR_MIN;
enum wchar_t WCHAR_MAX;
enum wint_t WINT_MIN;
enum wint_t WINT_MAX;
alias INT8_C = _typify!byte._typify;
alias INT16_C = _typify!short._typify;
alias INT32_C = _typify!int._typify;
alias INT64_C = _typify!long._typify;
alias UINT8_C = _typify!ubyte._typify;
alias UINT16_C = _typify!ushort._typify;
alias UINT32_C = _typify!uint._typify;
alias UINT64_C = _typify!ulong._typify;
alias INTMAX_C = _typify!long._typify;
alias UINTMAX_C = _typify!ulong._typify;