0

こんにちは、入力文字列にバックスペース (\b) があるかどうかはどうやってわかりますか? 私が知っていることから、カーソルを後ろに移動し、\b が書かれている最も近い文字を消し去ります。そこに \b があることをどのように知ることができますか? TNX

4

1 に答える 1

2

を使用して、文字列内の任意の文字を検索できますstrchr。つまり、端末 (tty) は (raw モードではなく) クック モードになるため、通常、入力にバックスペースが表示されることはありません。つまりカーネルは、リターンを押してから、 (編集された) 文字列全体がプログラムに渡されます。

シェルのようなプログラムは、tty を raw モードにして、より広範な編集 (通常は完全な Emacs または vi のような編集) を実行できるようにします。シェルからプログラム (独自のものなど) を起動すると、最初にクック モードに戻ります。

于 2012-12-17T01:04:12.243 に答える