回答編集履歴
1
誤字脱字修正
test
CHANGED
@@ -4,13 +4,11 @@
|
|
4
4
|
|
5
5
|
|
6
6
|
|
7
|
-
`rdfs`の内容は隠蔽されているので、基本、プログラマーが意識する必要はありません。`FD_SET(0, &rfds)`を実行すると、ファイルディスクリプターの`0`が`rdfs`の構造体にフラグ情報として収められ、`select`で監視対象として使えるようになります。
|
7
|
+
`rdfs`の内容は隠蔽されているので、基本、プログラマーが意識する必要はありません。`FD_SET(0, &rfds)`を実行すると、標準入力であるファイルディスクリプターの`0`番が`rdfs`の構造体にフラグ情報として収められ、`select`で監視対象として使えるようになります。
|
8
8
|
|
9
9
|
|
10
10
|
|
11
|
-
その後、`select`実行中にキーボードから入力(実際はENTERキーを押し、`\n`が入力)されるまで停まっています。入力が
|
11
|
+
その後、`select`実行中にキーボードから入力(実際はENTERキーを押し、`\n`が入力)されるまで停まっています。入力が済めば、ファイルディスクリプターの`0`番に変化があったことで`select`から抜けてきます。`FD_ISSET`で本当に正しく`0`番に変化があったことを検査してから`read`すれば、入力された値を読み出すことができる、というわけです。
|
12
|
-
|
13
|
-
値を読み出すことができる、というわけです。
|
14
12
|
|
15
13
|
|
16
14
|
|