UNIXのCLI用のツールを作成する場合、プログラムにヘルプや使用法を出力するにはどうすればよいですか?
私は通常を使用しますがfprintf(stderr, "help text here");
、それにはいくつかの問題があります。
- まず、を使用すべきかどうかはわかりません
stderr
。大丈夫ですか、それとも使用すべきstdout
ですか? - ご想像のとおり、ヘルプテキストは非常に長く、ツールのオプションの数によって異なります。今、私は通常、
"strings like that\n"
2番目のパラメータにいくつかを入れます。ただし、これにより、ソースコードが50行以上のヘルプテキストで埋められます。簡単に管理できるものではありません。代わりに何をすべきですか? - ツールがCまたはCに似た言語で記述されていない場合、可能であればhere-docsを使用する傾向があります(最も顕著なのはPerlです)。私はCでそれを使用できませんが、私が使用できるようなものがありますか?
- 私はそれを入れて検討していた
headerfile.h
の内側には#define HELP "help text here"
、私は野生の中でそれを見たことがない、私は実際にそれを使用する必要があるかどうかわかりません。
理想的には、テキストを外部ファイルに入れて含めることができます。#include
ただし、そのために使用するのは間違っているようです。どうすればいいですか?
アイデアは、ヘルプテキストを用意して、簡単に管理できるようにすることです。ソースコード内に配置することは、あまり便利ではありません。