とa = getchar()
同等scanf("%c",&a);
ですか?
where is a variable?とputchar(a)
同等です。printf("%c",a);
a
char
一般的に言えば、それらは同じです。
しかし、それらはいくつかの細かい方法ではありません。関数は returnではなくgetchar
return に型付けされています。これは、すべての可能な値と追加のエラー コードの両方を可能にするために行われます。 int
char
getchar
char
したがって、以下はほとんどのコンパイラで問題なくコンパイルされますが、本質的にエラー メッセージを切り捨てています。
char c = getchar();
ただし、 functionscanf
を使用すると、char
型を直接使用でき、エラー コードを戻り値に分離できます。
彼らはここで同じことをします。ただし、文字を処理しているだけであることがわかっている場合は、getchar
およびバリアントがリクエストの処理方法を決定するために毎回文字列を解析する必要がputchar
あるため、より効率的になりprintf
ます。scanf
さらに、それらは下位レベルのライブラリで呼び出される場合があるため、他の場所で必要ない場合 はprintf
/をリンクする必要はありません。scanf