これは愚かな質問かどうかは確かではありませんが、すぐにわかります。getcとgetwc:stdinをどのように正確に読み込みますか?
getc
とgetwc
がどのように機能するのかを正確に理解できていません。私はそれらを使用することはできませんが、私は彼らが何をしているのか正確にはわかりません。 int
とgetc
は、私がprintf( "%c")した場合、ほとんどの文字を返します。
私の質問は:これらの機能がどのくらい正確に機能するのか、標準入力をどのように読み取るのですか正確に?説明とドキュメントへの良い指針は非常に感謝しています。
を編集してください。私がウィリアムの答えで残したコメントを読んでください。それは、後の詳細レベルを明確にするのに役立ちます。
)のおかげで、ウィリアムが、私はこれについてできるだけ多くの情報を希望。
呼び出しチェーンは少し退屈得ることができますが、あなたはそれを求め追跡。たとえば、「データ」と呼ばれるものは何バイトですか?何か?それは本当に文字を返しますか?キャラクターがマルチバイトで、まだ「OK」が印刷されている場合(「€」の場合と同様に)? –
€がマルチバイトではない多くのエンコードがあります。とにかく、getc()がマルチキャラクタの入力ストリーム(例えばUTF-8でエンコードされたもの)からバイトを読み取る場合、文字が画面に表示されるまで、さらに2つのgetc/putc呼び出しが行われることを意味します。 getcはunix上で一度に1バイトを読み込みます。 – nos