ユーザーが1つずつ入力する文字を格納するために使用しているchar配列バッファがあります。以下の私のコードは動作しますが、私が理解できないいくつかの不具合があります:
- printf を実行して Buffer の内容を確認すると、いっぱいになりますが、最後に文字化けが発生します
- char Buffer[8]; として宣言されているにもかかわらず、8 文字で停止しません。
誰かが私に何が起こっているのか、おそらくどうすればこれを修正できるのか説明してもらえますか? ありがとう。
char Buffer[8]; //holds the byte stream
int i=0;
if (/* user input event has occurred */)
{
Buffer[i] = charInput;
i++;
// Display a response to input
printf("Buffer is %s!\n", Buffer);
}
出力:
tagBuffer は 1┬┬w! tagBuffer は 12┬w です! tagBuffer は 123w です! tagBuffer は 1234 です! tagBuffer は 12345 です! tagBuffer は 123456=! tagBuffer は 1234567 です! tagBuffer は 12345678 です!
tagBuffer は 123456789 です!