お世話になります
以下環境にて
OS:Windows10
エクリプス:V4.5
言語:C言語
コンパイラ:MinGW GCC
printf("ABCDE\b");
を実行すると
コンソールに
ABCDE□ と表示されます
Eが消えてくれるように
お祈りを捧げたのですが通じませんでした
どなたかお分かりになられる方
解答いただけますでしょうか
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答3件
0
ベストアンサー
これ↓を見る限りではEclipseバグのようです。(再発?)
Bug 471039 – Eclipse Console window does not handle backspace \b properly
https://bugs.eclipse.org/bugs/show_bug.cgi?id=471039
Bug 76936 – [console] Eclipse Console window does not handle \b, \f, and \r
https://bugs.eclipse.org/bugs/show_bug.cgi?id=76936
なので言語が何でも発生してしまうと思います。
(Java, Python, Golangでも確認しましたが同じでした。)
ちょっと古めのEclipse4.3(Kepler)でもダメでした。
Eclipse上ではあきらめたほうが良いかも知れませんね。
投稿2016/06/08 12:57
総合スコア9390
0
制御文字をどう処理するかは環境依存なので、Eclipseのコンソールは対応していないのだと思います。
ちなみにWindowsのコマンドプロンプトだと\b
は「次の表示位置を1文字戻す」という機能のようで、消してはくれませんでした(直後にprintfするとEの位置から上書きしています)。
投稿2016/06/08 11:47
総合スコア5938
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2016/06/08 12:34
2016/06/08 14:08
2016/06/08 14:23
2016/06/08 14:32
2016/06/09 03:42
0
こんにちは。
昔はコンソールで1文字削除する時は「1文字戻し(\b)、スペース、1文字戻し(\b)」というシーケンスを送っていました。catsforepawさんの確認からするとたぶん今もそうなのだろうと思います。
しかし、argiusさんのリンクを見るとeclipseの昔からのバグが未だに修正されていない様子ですので、elipseのコンソールで1文字削除は厳しそうですね。
MinGWを使っているのでしたら、eclipseのコンソールでのデバッグは断念して、コマンド・プロンプト上でデバッグすれば"\b \b"を送ることで1文字削除できると思います。
ただし、日本語等を使っていると文字の後半が消えるだけなので結構気持ち悪いことになるかもしれません。
日本語対応は結構たいへんだった記憶があります。
投稿2016/06/08 13:43
総合スコア23272
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。