[解決済み] バックスペース」エスケープ文字' \b':予期せぬ動作?
2022-02-17 21:57:07
質問
ということで、やっとこさ読み進めているのが
K&R
最初の数ページで、バックスペースのエスケープ文字があることを知りました。
\b
.
そこで、テストしてみると、非常に奇妙な動作がありました。
#include <stdio.h>
main ()
{
printf("hello worl\b\bd\n");
}
出力は
hello wodl
どなたか説明してください。
どのように解決するのですか?
どのような端末やコンソールプログラムを使用しているかによって結果は異なりますが、ほとんどの場合
\b
は
非破壊的
バックスペース。カーソルを後方に移動させますが、そこにあるものを消すことはできません。
そのため
hello worl
の部分は、コードが出力します。
こんにちは ^
...(ここで
^
はカーソルがある場所を示しています)そして、2つの
\b
という文字が表示され、カーソルが2つ後ろに移動します。
なし
を消去する(端末の場合)。
こんにちは ^
カーソルが
r
. そして、次のように出力されます。
d
を上書きします。
r
となり、私たちに与えてくれます。
hello wodl ^
最後に、次のように出力されます。
\n
これは非破壊的な改行です(あなたの端末も含め、ほとんどの端末で)。
l
は変更されず、カーソルが次の行の先頭に移動します。
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】C言語で「関数の型が競合しています」と表示される、なぜ?
-
[解決済み】ISO C90では、C言語での宣言とコードの混在が禁止されています。
-
[解決済み] テスト
-
[解決済み] [Solved] なぜこのようなエラーが発生するのでしょうか。「データ定義に型またはストレージクラスがない」?
-
[解決済み】警告:組み込み関数'printf'の非互換な暗黙の宣言(デフォルトで有効]
-
[解決済み】 「配列のイニシャライザーはイニシャライザーリストまたは文字列リテラルでなければなりません」と表示されるのですが?
-
[解決済み] Cプログラムで「配列の添え字が整数でない」。
-
[解決済み】execvp: バッドアドレスエラー
-
[解決済み] 単語を含まない行にマッチする正規表現
-
[解決済み] Linuxスクリプトで端末のユーザー入力を隠す