0%

C++ 将整型参数传递至argv[]中

本文参考文章1文章2

对于C++程序,主程序int main(int argc, char *argv[])中,参数含义如下所示:

  • argc代表向main函数传入参数的数量;
  • argv[]代表传入的字符串构成的数组,默认argv[0]表示程序的名称,后续的argv[1]argv[2]…表示传入的字符串数量。

由于argv[]是字符串数组,若想传入整型参数则需要进行额外操作:

  • 包含头文件 #include <stdlib.h>;
  • int i = atoi(argv[1]);:将字符型argv[1]转换为整型并赋值给 i
1
2
3
4
5
6
7
8
9
10
11
12
#include <iostream>
#include <opencv2/opencv.hpp>
#include <stdlib.h>

int main(int argc, char *argv[])
{
int rows = atoi(argv[1]);
int cols = atoi(argv[2]);
...

return 0;
}