-2

これはコードです:

char ch;
ch = getchar() ;

他の文字を入力せずに Enter キーだけを押すと、入力はどうなりますか? 可能であれば理由を説明してください。

編集:

改行文字を入力することは知っていますが、「a」を押すと「a」が入力されるのに「\n」と入力する理由を知りたいですか? ENTER、SPACE.TABなどの入力を示すリストがある場合。

4

2 に答える 2

3

改行文字 - を取得します'\n'

于 2012-09-19T14:56:09.353 に答える
1

ASCIIに精通していると思いますか?

これはあなたが得ているものです。getchar()入力した文字の整数(ASCII)値を返します。たとえば、次のコードがあるとします。

void main()
{
    char ch;
    while(1){
      ch = getchar();
      printf("%c, %#x\n",ch,(int)ch);
    }
    return;
}

「4」と入力すると、次のように表されます。 4, 0x34 (integer representation of '4')

同様に、これは \n または \t またはその他のいずれでも機能します。\t と入力すると、次のように表示されます。 , 0x9

文字はタブなので、表示されませんがgetchar()、タブをつかむと、予想どおり 0x9 であることがわかります。それは役に立ちますか?それがあなたの求めている答えかどうかはわかりません。

于 2012-09-19T15:47:01.643 に答える