Cprogramming-c-input-output
C-入力および出力
- 入力*と言うとき、それはデータをプログラムに送ることを意味します。 入力は、ファイルの形式またはコマンドラインから指定できます。 Cプログラミングには、指定された入力を読み取り、要件に従ってプログラムに入力する組み込み関数のセットが用意されています。
- 出力*と言うとき、画面、プリンター、または任意のファイルにデータを表示することを意味します。 Cプログラミングには、コンピューター画面にデータを出力したり、テキストまたはバイナリファイルに保存したりするための一連の組み込み関数が用意されています。
標準ファイル
Cプログラミングは、すべてのデバイスをファイルとして扱います。 そのため、ディスプレイなどのデバイスはファイルと同じ方法でアドレス指定され、キーボードと画面へのアクセスを提供するプログラムの実行時に次の3つのファイルが自動的に開きます。
Standard File | File Pointer | Device |
---|---|---|
Standard input | stdin | Keyboard |
Standard output | stdout | Screen |
Standard error | stderr | Your screen |
ファイルポインターは、読み取りおよび書き込み目的でファイルにアクセスする手段です。 このセクションでは、画面から値を読み取る方法と、画面に結果を印刷する方法について説明します。
getchar()およびputchar()関数
- int getchar(void)*関数は、画面から次に使用可能な文字を読み取り、整数として返します。 この関数は、一度に1文字のみを読み取ります。 画面から複数の文字を読みたい場合は、ループでこのメソッドを使用できます。
- int putchar(int c)*関数は、渡された文字を画面に表示し、同じ文字を返します。 この関数は、一度に1文字のみを入力します。 画面に複数の文字を表示する場合は、ループでこのメソッドを使用できます。 次の例を確認してください-
上記のコードがコンパイルおよび実行されると、テキストの入力を待機します。 あなたがテキストを入力してEnterキーを押すと、プログラムが進行し、単一の文字のみを読み取り、次のように表示します-
gets()およびputs()関数
注: gets()関数の使用は非推奨になりましたが、getsの代わりにlink:/c_standard_library/c_function_fgets [fgets()]を使用する必要があります。
上記のコードがコンパイルおよび実行されると、テキストの入力を待機します。 あなたがテキストを入力してEnterキーを押すと、プログラムは続行し、最後まで完全な行を読み取り、次のように表示します-
scanf()およびprintf()関数
上記のコードがコンパイルおよび実行されると、テキストの入力を待機します。 あなたがテキストを入力してEnterキーを押すと、プログラムは続行し、入力を読み取り、次のように表示します-
ここで、scanf()は、%sおよび%dを指定したのと同じ形式の入力を想定しているため、「文字列整数」などの有効な入力を指定する必要があることに注意してください。 「string string」または「integer integer」を指定すると、誤った入力と見なされます。 第二に、文字列の読み取り中に、scanf()はスペースに遭遇するとすぐに読み取りを停止するため、「this is test」はscanf()の3つの文字列です。