uintmax_t
読み:ユーイント-マックス-アンダースコア-ティー
外語:uintmax_t

 ISO/IEC 9899:1999(C99)から追加された変数型の一つであり整数型の一つで、最大幅を持つ符号なしの整数を宣言する。
目次

書式
 次のどちらでも型は定義されるが、関連する関数を定義するためには上のincludeが必要である。
 #include <inttypes.h>
 #include <stdint.h>

定義

FreeBSD
 stdint.hか、inttypes.hから呼ばれるsys/stdint.hで定義される。
 typedef __uintmax_t uintmax_t;
 machine/_types.h
 typedef unsigned long long __uint64_t;
 typedef __uint64_t __uintmax_t;
 FreeBSDでは、間接的にlong longで定義される。
 また、stdint.hからincludeされているmachine/_stdint.hで、次のような定義がある。
 #define UINT64_MAX 0xffffffffffffffffULL
 #define UINTMAX_MAX UINT64_MAX

特徴
 FreeBSDでは、inttypes.hで、次のような関数が定義される。
 uintmax_t strtoumax(const char * __restrict, char ** __restrict, int);
 uintmax_t wcstoumax(const __wchar_t * __restrict, __wchar_t ** __restrict, int);
 それぞれ、従来の標準ライブラリ関数と同様の機能をもつが、uintmax_t型を使うように仕様が変えられたものである。

再検索