57

ストリーム、より具体的にはファイル ストリームについて聞いたことがあります。

それで、彼らは何ですか?

記憶の中に位置を持っているものですか?

データを含むものですか?

ファイルとオブジェクトの間の単なる接続ですか?

4

4 に答える 4

56

ストリームという用語は、不明なバイト数の送受信を可能にする構造を抽象化したものです。比喩は水の流れです。データはそのまま取得するか、必要に応じて送信します。これを、既知の固定長を持つ配列などと比較してください。

ストリームが使用される例には、ファイルの読み取りと書き込み、外部接続を介したデータの送受信が含まれます。ただし、ストリームという用語は一般的なものであり、特定の実装については何も言いません。

于 2012-08-27T16:01:25.727 に答える
12

IOStream は、入力関数と出力関数を定義するために使用されるフロントエンド インターフェイス ( std::istream、 ) です。std::ostreamストリームは、書式設定オプションも格納します。たとえば、整数出力に使用するベースや、std::localeあらゆる種類のカスタマイズ用のオブジェクトを保持します。それらの最も重要なコンポーネントは、std::streambuf一連の文字 (ファイル、文字列、画面上の領域など) にアクセスする方法を定義する へのポインタです。特に、ファイルと文字列に対しては、特別なストリーム バッファが提供され、クラスから派生したクラスが提供されます。簡単に作成できるように、ストリーム基本クラスが提供されます。IOStreams ライブラリのすべての機能を説明すると、ほぼ 1 冊の本を埋めることができます。C++ 2003 では、ライブラリ セクションの約半分がストリーム関連の機能に費やされていました。

于 2012-08-27T16:02:27.187 に答える
9

ストリームは、ファイルをプログラムに接続し、双方向のデータの流れを維持する線形キューです。ここでのソースは、任意のファイル、I/O デバイス、ハードディスク、CD/DVD などです。

基本的にストリームは1.テキストストリーム 2.バイナリストリームの2種類の場合

テキスト ストリーム : 文字が一列に並べられ、各行が改行で終了するシーケンスです (unix)。

バイナリ ストリーム: コンピューターのメイン メモリに内部的にコーディングされているままのデータで、変更は加えられていません。

于 2017-01-26T17:55:54.933 に答える
4

ファイル システムは、端末、ディスク ドライブ、テープ ドライブなど、さまざまなデバイスで動作するように設計されています。各デバイスは異なりますが、ファイル システムはそれぞれをストリームと呼ばれる論理デバイスに変換します。ストリームはデバイスに依存しないため、同じ関数を使用してディスク ファイルとテープ ファイルを書き込むことができます。より専門的な用語では、ストリームはプログラマーと実際に使用されているデバイスとの間の抽象化を提供します。

于 2015-07-04T10:19:09.660 に答える