OS:Debian 9(Linux 4.9)
コンパイラ:GCC 8.2
現在、<stddef.h>
(size_t
が定義されている)と<stdint.h>
(ほとんどの整数型が定義されている)を含めていますが、ssize_t
はまだありません。
それはどこに定義されていますか?
( https://stackoverflow.com/a/29984840/6872717 ):
粒度の細かいファイルでのPOSIXおよびCヘッダーの分割は、おそらくコンパイルに長い時間がかかる可能性があった昔からあり、不要なヘッダーファイルを追加すると時間が長くなります。
OSタイプのみが必要な場合は、関数のプロトタイプを例に挙げれば、
#include <sys/types.h>
だけです。ただし、関数定義が必要な場合は、必要に応じて#include <unistd.h>
またはその他のシステムヘッダーを使用します。
多くのPOSIX関数の場合は#include <unistd.h>
、タイプを含む小さなヘッダーの場合は#include <sys/types.h>
のみ。