2014年2月7日金曜日

C99のuintptr_t, intptr_t

C99のuintptr_tとintptr_t。一言で説明すると「ポインタと同じビット幅の整数型」。要は

sizeof(uintptr_t) == sizeof(void *)
sizeof(intptr_t) == sizeof(void *)
が成り立つことを保証している整数型なわけだ。符号の有無は名前の通り。

アドレスを整数に、整数をアドレスにキャストするようなコードって、大抵ガチガチにプラットフォーム依存しているので、移植性なんて考えずにuint32_tとか使っていたYO。

0 件のコメント:

コメントを投稿