uintptr_t

読み:ユーイントポインター・アンダースコア・ティー
外語:uintptr_t 英語
品詞:名詞

Cで、ポインター保持に充分な大きさの符号なしの整数型。C99(ISO/IEC 9899:1999)で追加された。

目次

ポインターを整数型変数に代入して演算し、再びポインター変数に戻すような処理はよく行なわれる。

しかしその時の整数型変数をintやlongとすると、移植性が大きく損なわれる。

そもそもそのような処理をするプログラムに移植性があるのかという問題はさておき、この目的で処理系の独自実装の型を用意する処理系も存在したが、C99から公式仕様として導入された。

この型は、少なくともポインター長が保証される。

#include <stdint.h>

FreeBSDでは、次のように定義される。

stdint.hまたはsys/stdint.h

typedef __uintptr_t uintptr_t;

machine/_types.h

typedef unsigned int __uint32_t;

typedef __uint32_t __uintptr_t;

つまり、32ビット環境のFreeBSDでは、間接的にunsigned intで定義される。

signedな関連型に、intptr_tがある。

用語の所属
_t
関連する用語
intptr_t
UINT_PTR

コメントなどを投稿するフォームは、日本語対応時のみ表示されます


KisoDic通信用語の基礎知識検索システム WDIC Explorer Version 7.04a (27-May-2022)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club