我想知道如何制作在终端中运行的应用程序。我的意思是一个程序,他们可以随时输入-h
寻求帮助,他们对要运行的命令有不同的选择...即你用完终端的任何linux应用程序。
任何资源都将受到赞赏。
答案 0 :(得分:4)
在C中,您的主程序通常写为:
int main(int argc, char *argv[])
argv
数组是参数(argv[0]
是您运行的命令的名称),因此您只需检查if(argc > 1 && !strcmp(argv[1], "-h"))
以查看您是否正在运行{{1} (并且只需使用-h
打印到终端)。
如果您想要更合适的参数解析库,请查看printf
(https://www.gnu.org/software/libc/manual/html_node/Example-of-Getopt.html)。 GNU版本(这是Linux发行版中最常用的版本)也具有长参数的功能(处理getopt
和-h
)
答案 1 :(得分:0)
Nirk给出了您可以合理预期的最佳答案。你在这里问一个非常广泛的问题。我想补充一点,你应该下载GNU Core Utils的来源,并尽可能地通过代码。大多数命令行实用程序花费75%的代码收集,分组,处理,检查等命令行参数!选择一个带有一些简单选项的程序,因为复杂的选项会让你的头顶开出至少几个小时。