2

を使用してコマンドライン引数を解析しようとしていGetoptます。
ただし、私の引数の一部は、とが定数であり、とhost myhost server myserverが引数を変更している形式からのものです。hostservermyhostmyserver

そのようなオプションを解析できますか?

4

1 に答える 1

1

配列を前処理してargv(できれば、その場で変更しようとするのではなく、新しい場所にコピーして)、期待される形式に準拠させてから、を使用できる場合がありますgetopt。しかし、それはおそらくそれが価値があるよりもはるかに多くの作業であり、それでも壊れたコーナーケースがあるかもしれません。getoptオプションがPOSIXガイドラインに準拠しているユーティリティでの使用のみを目的としています。私はあなた自身の引数処理コードを書くだけです。私は通常、コード駆動型(明示的なコードを含むステートメントgetopt)よりもデータ駆動型(たとえば、可能なオプション/引数、それらのタイプ、およびそれらの格納方法を説明する構造体の配列)のコマンドライン処理を好むため、実際にはそれが機能する場合でも私の好みですswitchオプションごとに)。

于 2012-04-22T16:16:34.850 に答える