C入力&出力
我々は、プログラムがいくつかのデータを記入したいことを意味し、入力、を参照するとき。 入力は、コマンドラインまたは実施のファイルの形態であってもよいです。 C言語では、与えられた入力を読み込むための組み込み関数のセットを提供し、プログラムに必要に応じて充填しました。
私たちは、出力について話すとき、それは、プリンタ上の任意のファイルを意味するか、画面上のいくつかのデータを表示します。 C言語は、コンピュータの画面上でデータを出力する組み込み関数のセットを提供し、テキストファイルまたはバイナリファイルにデータを保存します。
標準ファイル
C言語では、ファイルとしてすべての機器を置きます。 そのように(例えば、ディスプレイのような)デバイスファイルと同じように処理されます。 プログラムは、キーボードと画面にアクセスするために実装されている場合は、次の3つのファイルが自動的に開かれます。
标准文件 | 文件指针 | 设备 |
---|---|---|
标准输入 | stdin | 键盘 |
标准输出 | stdout | 屏幕 |
标准错误 | stderr | 您的屏幕 |
ファイルポインタがファイルへのアクセスで、このセクションでは、どの画面からの出力値の結果を読み取ると、画面上にする方法を説明します。
getchar関数()&putcharは()関数
int型GETCHAR次の利用可能な文字を読み取るための画面から(ボイド)機能、および整数として返します。同じ時間内にのみ、この機能を単一の文字を読み込みます。 あなたは、画面から複数の文字を読むためにループ内でこのメソッドを使用することができます。
画面への出力文字にint型のputchar(int型c)の機能、および同じ文字を返します。 同じ時間意志の出力にこの関数単一の文字。 あなたは、画面上に出力するようにループ内で複数の文字を、この方法を使用することができます。
次の例を考えてみます。
#include <stdio.h> int main( ) { int c; printf( "Enter a value :"); c = getchar( ); printf( "\nYou entered: "); putchar( c ); return 0; }
上記のコードをコンパイルして実行されると、テキストを入力し、Enterキーを押すと、あなたには、いくつかのテキストを入力することが待機し、プログラムは続行され、単一の文字を読み込みます、以下に示します。
$./a.out <b>Enter a value :</b> this is test <b>You entered:</b> t
()関数を(取得)&プット
文字*を取得(のchar * s)は関数がバッファに標準入力から行を読み取るには、ターミネータまたはEOFまで、sが指します。
文字列sと末尾の改行文字にプット(のconstのchar * s)は関数をint型は、標準出力に書き込まれます。
#include <stdio.h> int main( ) { char str[100]; printf( "Enter a value :"); gets( str ); printf( "\nYou entered: "); puts( str ); return 0; }
上記のコードをコンパイルして実行されると、あなたがテキストを入力すると、いくつかのテキストを入力し、Enterキーを押して、プログラムを続行し、行の終わりまでの行全体を読み込みますすることが待機し、それを以下に示します。
$./a.out <b>Enter a value :</b> this is test <b>You entered:</b> This is test
scanf()とのprintf()関数
int型のscanf(constのchar型*フォーマット、 ...)関数は、標準入力ストリーム標準入力から入力を読み込むフォーマットに従って、ブラウザに入力を提供します。
int型のprintf(constのchar型*フォーマット、 ...)関数は、標準出力ストリームstdoutに出力を書き込み、およびフォーマットに従って出力を生成します。
フォーマットは 、単純な文字列定数かもしれないが、あなたに%s、%D、%cを指定することができ、%fを出力文字列、整数、浮動小数点や文字を読み取ることなどを。他にも多くのフォーマットオプションがあります。必要に応じて、利用可能です。 詳細については、あなたは、これらの機能は、マニュアルを参照表示することができます。 理解を深めるために、以下の簡単な例を見てみましょう:
#include <stdio.h> int main( ) { char str[100]; int i; printf( "Enter a value :"); scanf("%s %d", str, &i); printf( "\nYou entered: %s %d ", str, i); return 0; }
上記のコードをコンパイルして実行されると、あなたがテキストを入力すると、いくつかのテキストを入力し、Enterキーを押すようにするために、それは待機し、入力を継続し、読み込みますプログラムは、以下に示します。
$./a.out <b>Enter a value :</b> seven 7 <b>You entered:</b> seven 7
ここでは、そののscanf()の書式を注意すべきである、あなたは "文字列を提供する場合は、そのような"文字列、整数」として、有効な入力を提供しなければならないことを意味しますが、%D%sと同じ与える入力、を楽しみにしています文字列」または「整数の整数」は、誤入力と考えられます。 文字列を読み込むときに加えて、限り出会いなどスペース、scanf関数は、())scanfのための( "これはテストです」読み停止するため、3つの文字列です。