C++ int argc, char *argv[] 的含义与用法

分类: 365bet正网注册 时间: 2025-12-07 13:18:59 作者: admin 阅读: 8079

1、基本用法argc(argument count)表示命令行参数的个数(包括程序名本身)。argv(argument vector) 是一个字符指针数组,保存所有参数的字符串(C风格字符串)。

int main(int argc, char *argv[])

int main(int argc, char **argv)

#include

using namespace std;

int main(int argc, char *argv[]) {

std::cout << "参数个数: " << argc << std::endl;

for (int i = 0; i < argc; ++i) {

std::cout << "参数 " << i << ": " << argv[i] << std::endl;

}

return 0;

}注意:argv[0] 通常是程序本身的名字。所有参数都是字符串类型,需要用 std::stoi, std::stod 等函数进行转换。argv[argc] 是一个空指针 nullptr(但不建议访问它)。

2、读取命令行输入文件或输出路径用户运行程序时传入文件路径或名称作为参数。

#include

using namespace std;

int main(int argc, char *argv[]) {

if (argc != 3) {

std::cerr << "用法: " << argv[0] << " <输入文件> <输出文件>\n";

return 1;

}

std::string inputFile = argv[1];

std::string outputFile = argv[2];

// 处理文件...

}3、设置程序参数(如模式、选项、开关)用户通过命令行传递不同选项影响程序行为,比如 --verbose 或 --help。

#include

using namespace std;

int main(int argc, char *argv[]) {

std::cout << "argc = " << argc

<< "\nargv[0] = " << argv[0];

for (int i = 1; i < argc; ++i) {

std::string arg = argv[i];

std::cout << arg;

if (arg == "--help") {

std::cout << "帮助信息:用法...\n";

} else if (arg == "--mode" && i + 1 < argc) {

std::string mode = argv[++i];

std::cout << "压缩模式:" << mode << std::endl;

}

}

}

相关文章

be365备用网址

苹果手机怎么测分贝——详细指南与应用解析,苹果手机怎么测分贝噪音

365bet正网注册

Solidworks曲面建模学习(一)——曲面设计一般过程(建造旋钮为例)

be365备用网址

抓人是民警还是刑警?