C++;使用命令行参数 对于我的作业,我刚写了一个C++程序,它在运行时应该提供命令行参数(例如,代码> -L/COD>)。现在,我需要在Unix中编译和运行我的程序。因此,我需要一个makefile和一个bash脚本(名称为cddb)来调用我的程序

C++;使用命令行参数 对于我的作业,我刚写了一个C++程序,它在运行时应该提供命令行参数(例如,代码> -L/COD>)。现在,我需要在Unix中编译和运行我的程序。因此,我需要一个makefile和一个bash脚本(名称为cddb)来调用我的程序,c++,linux,bash,unix,makefile,C++,Linux,Bash,Unix,Makefile,我的问题是两个文件的顺序。这个要求就像我应该输入cddb-l来运行程序一样。那么,我是否应该编写一个bash脚本来调用makefile并将参数传递给makefile呢。然后makefile获取参数并编译并运行我的cpp文件?命令行参数的思想是在运行时更改可执行文件的行为,因此如果您想要稍微不同的行为,则无需重新编译源代码 只需像/cddb-l那样调用程序,并解析源代码中的命令行参数。要解析参数,可以使用主函数签名中声明的argv和argc变量。生成文件告诉make如何构建程序,就是这样。然后,您

我的问题是两个文件的顺序。这个要求就像我应该输入
cddb-l
来运行程序一样。那么,我是否应该编写一个bash脚本来调用makefile并将参数传递给makefile呢。然后makefile获取参数并编译并运行我的cpp文件?

命令行参数的思想是在运行时更改可执行文件的行为,因此如果您想要稍微不同的行为,则无需重新编译源代码


只需像
/cddb-l
那样调用程序,并解析源代码中的命令行参数。要解析参数,可以使用主函数签名中声明的argvargc变量。

生成文件告诉
make
如何构建程序,就是这样。然后,您只需像任何其他命令或程序一样运行您的程序。例如,如果您的程序可执行文件位于当前目录中,则执行
/cddb-l
。不需要shell脚本。我不明白为什么需要bash脚本。只需在makefile中执行所有操作(运行一个target
run:
左右)。我不明白为什么需要makefile或bash脚本。家庭作业程序很少复杂到需要一个makefile,而且你不需要一个bash脚本来运行一个程序。听起来你需要一个bash脚本或者一个makefile来构建你的程序。初学者通常将compile命令放入bash脚本中,然后学习如何构建makefile。只需将用于构建程序的任何命令放入名为“build.sh”的文本文件中,并使其可执行(
chmod u+xbuild.sh
),然后使用该命令构建程序
/build.sh
或构建并执行<代码>g++cddb.cpp-o cddb/cddb-l。如果愿意,编写一个包含相同命令的
Makefile
显然并不难,但是如果您总是希望按顺序运行它们,那么在Bash历史记录中包含这些命令就是您真正需要的。