新建工程

  1. #include <opencv2/opencv.hpp>
  2. #include <iostream>
  3. using namespace cv;
  4. using namespace std;
  5. int main(int argc, char** argv) {
  6. Mat src;
  7. src = imread("xxx");
  8. if (src.empty()) {
  9. printf("could not load image...\n");
  10. return 0;
  11. }
  12. imshow("img", src);
  13. waitKey(0);
  14. return 0;
  15. }

argc 和 argv 的含义

argc 和 argv 这两个参数一般在用命令行编译程序时有用

主函数 main 中变量 (int argc, char *argv[]) 的含义

  • 第一个参数,int 类型的 argc 为整型,用来统计程序运行时发生给 main 函数的命令行参数的个数。在 Visual Studio 中默认为 1
  • 第二个参数,char* 类型的 argv[],为字符串数组,用来存放指向的字符串参数的指针数组,每个元素指向一个函数,各成员含义如下:
    • argv[0] 指向程序运行的全路径名
    • argv[1] 指向在 DOS 命令行中执行程序名后的第一个字符串
    • argv[2] 指向执行程序名后的第二个字符串
    • argv[3] 指向执行程序名后的第三个字符串
    • argv[argc] 为 NULL