通常PC用 / 人気 更新 今日 カテ |
電子計算機 > 仕様・構造 > ソフトウェア > プログラミング言語 > 言語仕様 > データ型・構造体 > 独自のデータ型・構造体 > ポインター用 |
LONG_PTR |
辞書:電算用語の基礎知識 プログラミング仕様編 (PTPROGS) |
読み:ロング-ポインター |
外語:LONG_PTR |
品詞:名詞 |
Microsoft WindowsのAPIなどに使われている、Cの変数型の一つ。ポインター長のlong。
Win32環境では32ビット長、Win64環境では64ビット長である。
|
主な用途 |
Windowsアプリケーションで、64ビット対応をする場合、longやLONGを、LONG_PTRに置き換える作業が主となる。
例えば、WindowsのAPI関数でよく使われるLPARAM型やLRESULT型は、LONG_PTR型をtypedefしたものである。また、SetWindowLong関数の改訂版として登場したSetWindowLongPtr関数は、第3引数がそのままLONG_PTR型で定義されている。
特徴 |
Microsoft Visual C++ 2008環境では、次のように定義される。
定義 |
名称にPTRとあるためポインター変数のように見えるが、実際にはそうではなく整数型の変数である。従ってLONG_PTRは「ポインター長のlong」であり、これを「long長のポインター」と考えることは誤りである。
Microsoft Visual C++ 2008環境では、次のように定義される。
(BaseTsd.h)
Win32プラットフォームでは__int32、Win64プラットフォームでは__int64として定義される。
すなわち、その環境におけるポインターのビット長と同じ長さの整数型として定義されている。
過去 |
現在の定義では、LONG_PTRはINT_PTRと同じである。
かつてはINT_PTRはintのtypedef、LONG_PTRはlongのtypedefだったため、このような名前となっているのである。
BaseTsd.hには、古い環境での定義が今も残されている。
リンク |
通信用語の基礎知識検索システム WDIC Explorer Ver 7.04a (27-May-2022) Search System : Copyright © Mirai corporation Dictionary : Copyright © WDIC Creators club |