赋值的一部分要求我在调用要通过终端运行的程序时定义输入文件名,到目前为止,我已经实现了我的程序以在打开文件名后接受用户输入文件名,但是在包含 0 或 1 输入的标志之前我们如何做到这一点?
这个想法
终端: ./test.exe -文件名- -标志-
你可以
通过这样声明你的main
来做到这一点
int main(int argc, char* argv[])
argv
是 C 样式字符串的数组,argc
是 argv
中有多少个 C 样式字符串。它们一起为您提供程序的命令行参数
您可以尝试此代码作为示例
#include <iostream>
int main(int argc, char* argv[]) {
std::cout << "Have " << argc << " arguments:" << std::endl;
for (int i = 0; i < argc; ++i) {
std::cout << argv[i] << std::endl;
}
}
然后,在运行程序时,您可以像这样调用它Example.exe "./test.txt" 0
这将输出
Have 3 arguments:
Example.exe
./test.txt
0