0

ディレクトリ名のリストの入力をユーザーに求めるCコードがあります。これは、単純なscanf()を使用して入力を受け取り、続行します。ここで、ディレクトリ名のオートコンプリートを提供したいと思います(bashのように)。ユーザーが/home/ aと入力し、Tabキーを押すと、「a」で始まる使用可能なユーザーディレクトリのリストが表示されます。これを実現するにはどうすればよいですか。

4

1 に答える 1

2

scanfカーネルクックドモードターミナルドライバーが提供する基本レベル(基本的にはバックスペースのみ)を超えるオートコンプリートやインタラクティブな編集には適していません。より洗練されたインタラクティブな入力を行いたい場合は、各キーイベントを取得して自分で処理するように端末モードを変更する必要があります。または、そのようなライブラリを使用readlineしてこれを行うことができます。

于 2012-11-26T02:06:46.437 に答える