web-dev-qa-db-ja.com

Cでptrdiff_tはどこで定義されていますか?

ptrdiff_t Cで定義されていますか?自明でない場合、LinuxのGCCからこのタイプを表示するにはどうすればよいですか?

53
Matt Joiner

stddef.hで定義されています。


そのヘッダーは、整数型size_tptrdiff_t、およびwchar_t、機能マクロoffsetof、および定数マクロNULLを定義します。

65
GManNickG

POSIX標準で定義されています: http://pubs.opengroup.org/onlinepubs/9699919799/basedefs/stddef.h.html where type実装固有の場合がありますが、インターフェイスはstddef.hです

1
Igor

@Good Personは、これはLinuxに固有のものではないと言っていたため、Microsoft Visual Studioでは、ptrdiff_tは次で定義されます。

C:\ Program Files(x86)\ Microsoft Visual Studio\2017\Enterprise\VC\Tools\MSVC\14.15.26726\include\vcruntime.h

0
William Leara