質問編集履歴

1 誤記

torimingo

torimingo score 73

2019/04/15 12:17  投稿

【C, C++】 キーのバッファを消去して更新する方法
以下のコードは、入力した文字を、1秒間隔で画面に出力するものです。
実行時に、aキーとエンターキーを素早く10回程度入力すると、入力を終えているにも関わらず、1秒毎にaが出力され続けます。
aキーとエンターキーを10回入力すると、どこかのバッファに蓄えられ、それがprintr()に渡されていると思うのですが、
そのバッファを強制的に消去することは可能でしょうか?
aキーとエンターキーを10回入力すると、どこかのバッファに蓄えられ、それがprintf()に渡されていると思うのですが、そのバッファを強制的に消去することは可能でしょうか?
aキーとエンターキーを素早く10回程度入力するのに3秒かかったとしたら、3つのa(3秒分のa)だけ画面に出力して、それ以降のaは、出力しないようにしたいです。
どうすればよいのでしょうか?
半日掛かっても全くわからなかったので、質問させて頂きました。
```c
#include <stdio.h>
#include <unistd.h>
int main()
{
   while(1){
       sleep(1);
       char in;
       in = getchar();
       printf("%c", in);
   }
   return 0;
}
```
  • C++

    6080 questions

    C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

  • C

    6195 questions

    C言語は、1972年にAT&Tベル研究所の、デニス・リッチーが主体となって作成したプログラミング言語です。 B言語の後継言語として開発されたことからC言語と命名。そのため、表記法などはB言語やALGOLに近いとされています。 Cの拡張版であるC++言語とともに、現在世界中でもっとも普及されているプログラミング言語です。

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る