• ベストアンサー

C言語を勉強し始めた初心者です

C言語を勉強し始めて、そろそろ1週間ぐらいになります。勉強は「独習C」という本と、ネットを参考にしながら進めています。 そこで質問なのですが、 getchar()やscanf()などの部分を見ると 「ラインバッファ」が使用されている という記述 があるのですが、概念がよくわかりません。 ググってみたりもしたのですが、いまいち 私自身が納得できる回答が得られないでいます。 よろしければ、初心者にわかるように 説明していただければと思います。 よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • bnosuke-x
  • ベストアンサー率39% (43/110)
回答No.2

コンピュータの世界で「ラインバッファ」と言ったら2種類あります。 ひとつは画面へ表示する情報を1ライン(走査線)ごとに蓄積して表示する方式のハードウェアで、1ライン分の情報を保持するメモリーの事を指します。 もう一つが今回質問されているもので、文字の入出力を1行単位で溜めておくメモリ上の領域のことを言います。 話に出るのは入力が多いですが、出力の時にも使うことがあります。 ラインというのは、「行」と言う意味です。 1行ごとに溜めるので、「ライン」バッファーです。 ひとまずはこれでいかがでしょう。

PGbeginner
質問者

お礼

回答ありがとうございます。 私のような初心者にも理解しやすい回答でした。

その他の回答 (1)

  • jacta
  • ベストアンサー率26% (845/3158)
回答No.1

setvbuf関数と_IOLBFマクロについて調べてみてください。

PGbeginner
質問者

お礼

回答ありがとうございます。 参考にさせていただきます。

関連するQ&A

専門家に質問してみよう