0
改行やタブなどのエスケープ文字を\ nや\ tのような表示可能なエスケープシーケンスに出力したいので、\ nを表示して、 n。しかし、それは動作しません。答えはnを2回印刷し、うまくいきます。そして私は理由を知らない。ここに私のコードです。cプログラミング言語のエクササイズ3-2配列のエスケープ文字を出力
case '\n' :
s[j] = '\\';
s[j++] = 'n';
break;
そしてHERESに答え
case '\n':
s[j++] = '\\';
s[j] = 'n';
break;
ありがとう!
「++」に関するすべてです。 'j ++ 'は' 'jの現在の値を使い、それをインクリメントすることを意味します。' 'j [0] =' \\ '; j [0] =' n '; j = j + 's [j] = '\\'; s [++ j] = 'n''(' ++ j'はj *の値を増やしてから使用することを意味します) – Tibrogargan
ああありがとう! – jessie
質問は基本的なC構文の質問であり、おそらくSOに価値を加えるつもりはないでしょう(人々は言うかもしれませんが)。質問はその理由で閉鎖されなければなりません)回答を入れるだけで、反発するだけでなく、質問が価値のないものとして削除されるのを防ぐことができます。 – Tibrogargan