1

fgets を使用してユーザー入力を読み取ります。しかし、「Ctrl+C」を押すと、端末に ^C 文字が表示されます。このエコーを防ぐ方法はありますか?

4

2 に答える 2

0

CTRL-C は、現在のタスクを中止し、ユーザー コントロールを取り戻すために使用されます。これは、オペレーティング システムがアクティブなプログラムにシグナルを送信する特別なシーケンスです。

CTRL-C シグナルのデフォルトのアクションは、fgets() を実行しているかどうかに関係なく、アクティブなプログラムを終了することです。これをオーバーライドする1つの方法は、独自のシグナルハンドラーを作成し、プログラム内でCTRL-Cを無視することです。これは、あなたの目的に役立つとは思えません。

于 2013-03-06T02:43:25.093 に答える