ファイル記述子に期待できる有効な値を知りたいです。
少し説明させてください。たとえば、#include <unistd.h>
Linuxシステムで使用すると、読み取り用にファイルを開く呼び出しが行われることを知っています。
int fileDescriptor;
fileDescriptor = open("/some/filename",O_RDONLY);
エラーが発生する可能性があり、結果として -1 が返されます。
ちなみに、(-1) の負の値には特別な意味があるはずです。他のすべての値は有効なファイル記述子ですか? つまり、-2 や -1023 のような負のものも?
sizeof(int)==4
int が 4 バイト ( ) であると仮定すると、
(-1) = 10000000 0000000 00000000 00000001
検出可能な唯一の無効なファイル記述子でしょうか? 他の人は好きですか:
(0) = 00000000 0000000 00000000 00000000
(-2) = 10000000 0000000 00000000 00000010
(2) = 00000000 0000000 00000000 00000010
大丈夫?ファイル記述子は 4 バイトを格納できるため、最大 (2^(8*4)-1) の有効なファイル記述子を持つことができ、その結果、これが開くことができるファイルの最大数になります。正しいですか?
もう一度簡単に言うと:
(有効な) ファイル記述子はどうあるべきですか?
-1 以外の値はありますか?