Wie soll ich beim Schreiben von Tools für die CLI von UNIX das Programm zum Ausdrucken der Hilfe und / oder Verwendung verwenden?
Ich benutze normalerweise fprintf(stderr, "help text here");
, aber es gibt mehrere Probleme damit.
- Erstens bin ich mir nicht sicher, ob ich verwenden soll
stderr
. Ist das in Ordnung oder soll ich verwendenstdout
? - Wie Sie sich vorstellen können, ist der Hilfetext ziemlich lang, je nachdem, über wie viele Optionen das Tool verfügt. Jetzt setze ich normalerweise nur mehrere
"strings like that\n"
in den zweiten Parameter. Dies füllt meinen Quellcode jedoch mit fünfzig oder mehr Zeilen Hilfetext. Es ist überhaupt nicht einfach zu handhaben. Was soll ich stattdessen tun? - Wenn ein Tool nicht in C oder einer C-ähnlichen Sprache geschrieben ist, verwende ich hier nach Möglichkeit Here-Docs (am bekanntesten bei Perl). Ich kann das nicht in C verwenden, aber gibt es so etwas, das ich verwenden könnte?
- Ich habe darüber nachgedacht, es in ein
headerfile.h
Inneres zu stecken#define HELP "help text here"
. Ich habe es noch nie in freier Wildbahn gesehen. Ich weiß nicht, ob ich das tatsächlich verwenden soll.
Im Idealfall könnte ich den Text in eine externe Datei einfügen und einfügen. Die Verwendung #include
dafür scheint jedoch falsch zu sein. Was sollte ich dann tun?
Die Idee ist, einen Hilfetext zu haben, der leicht zu handhaben ist. Es ist nicht wirklich praktisch, es im Quellcode zu haben.