- ベストアンサー
「\b」が使えません;;
「\b」が使えません;; こんばんは。 突然ですが、「\b」が使えません。 例えば、 #include<stdio.h> int main(){ printf("abcde"); printf("\b\b"); printf("ba"); return 0; } を実行すると「abcba」ではなく「abcdebc」と出力されてしまいます。 使っている環境はxcode3.2.2です。 何がおかしいのか教えて下さいm(_ _)m
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
バックスペースは、カーソルを戻すだけです。消去はしません。 また、改行文字は、次の行に移動するもので、(エディタの挿入モードのような)現在のカーソル位置から後が次の行にくることもありません。 なので、カーソルをIで表わすと →printf("abc") abcI →\b\b aIbc →\n abc I となります。
その他の回答 (2)
- harawo
- ベストアンサー率58% (3742/6450)
回答No.2
じっさいにXcodeでビルドして、実行すると、おっしゃるようになりました。 ターミナルでビルドして、実行すると、正しい結果になりました。 まあ、バグということでしょうねえ。
質問者
お礼
バグですか・・・。 ありがとうございます。
- kmee
- ベストアンサー率55% (1857/3366)
回答No.1
バックスペースでカーソルが移動するかどうかは、それを[表示する装置]に依存します。 ターミナル.app から実行したら、ちゃんと「abcba」と表示されましたよ
質問者
補足
サンプルを間違えていました・・・。 申し訳ないです。 #include<stdio.h> int main(){ printf("abc"); printf("\b\b\n"); return 0; } 上を実行すると、「abc」と表示されます。なぜ「a」にならないのでしょうか?
お礼
そういう事だったんですか! ありがとうございました。