状況
read 関数について調べています。
while で readの返り値を評価する 書き方を調べているのですが、
ネットで調べてみた限り、おおまかに2通りの書き方がありました。
[パターン1]
c
1fd = open(file, O_RDONLY); 2while (read(fd,&c,1) > 0) 3 write(1, &c, 1); 4close(fd);
[パターン2(2行目が異なる)]
c
1fd = open(file, O_RDONLY); 2while ((n = read(fd,&c,1)) > 0) 3 write(1, &c, 1); 4close(fd);
疑問
前述の2パターンは、私の知識では同じことをしているように見えるのですが、
少し挙動が異なるようで、テストケースによって異なる動きをすることがあるようです。。
この2つの違いは何になるのでしょうか?
色々評価式の出力を確認してみたのですが、挙動の差異がわかりませんでした。。
アドバイスいただけたら幸いです。よろしくお願いいたします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/04/10 05:43