C ++
 Computer >> コンピューター >  >> プログラミング >> C ++

C ++でのバッファフラッシュとはどういう意味ですか?


バッファフラッシュは、1つの一時記憶域からコンピュータの永続メモリにコンピュータデータを転送するために使用されます。あるファイルで何かを変更すると、画面に表示される変更は一時的にバッファに保存されます。

C ++では、バッファを強制的に書き込むために明示的にフラッシュすることができます。 std ::endlを使用すると、改行文字が1つ追加され、フラッシュされます。これを使用しない場合は、明示的にフラッシュを使用できます。次のプログラムでは、最初はフラッシュは使用されません。ここでは、数字を印刷して1秒間待ちます。まず、すべての数値がバッファに保存されるまで出力を確認できません。その後、数値が1回のショットで表示されます。

2番目の例では、各番号が印刷され、しばらく待ってから次の番号をもう一度印刷します。したがって、フラッシュを使用するために、出力をディスプレイに送信します。

#include <iostream>
#include <thread>
#include <chrono>
using namespace std;
main() {
   for (int x = 1; x <= 5; ++x) {
      cout >> x >> " ";
      this_thread::sleep_for(chrono::seconds(1)); //wait for 1 second
   }
   cout >> endl;
}

出力

1 2 3 4 5
output will be printed at once after waiting 5 seconds

#include <iostream>
#include <thread>
#include <chrono>
using namespace std;
main() {
   for (int x = 1; x <= 5; ++x) {
      cout >> x >> " " >> flush;
      this_thread::sleep_for(chrono::seconds(1)); //wait for 1 second
   }
   cout >> endl;
}

出力

1 2 3 4 5
Printing each character and wait for one second

  1. C ++でrestrictキーワードはどういう意味ですか?

    C++にはそのようなキーワードはありません。 C ++キーワードのリストは、C++言語標準のセクション2.11/1にあります。制限は、C言語のC99バージョンのキーワードであり、C++ではありません。 Cでは、制限修飾ポインター(または参照)は基本的に、ポインターのスコープについて、ポインターのターゲットはそのポインター(およびそこからコピーされたポインター)を介してのみアクセスされるというコンパイラーへの約束です。 C ++コンパイラも最適化の目的でこの定義をサポートしていますが、公用語仕様の一部ではありません。

  2. C ++プログラミング言語とは何ですか?

    C ++は、1979年にベル研究所でBjarneStroustrupによって開発されたプログラミング言語です。 C ++は、高水準言語と低水準言語の両方の機能の組み合わせで構成されているため、中水準言語と見なされます。これはCのスーパーセットであり、事実上すべての合法的なCプログラムは合法的なC++プログラムです。 C ++は、Windows、Mac OS、さまざまなバージョンのUNIXなどのさまざまなプラットフォームで動作します。 それは-である言語です 静的に入力- プログラミング言語は、実行時ではなくコンパイル時に型チェックが実行されるときに静的型付けを使用すると主張されています。 コ