程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 更多編程語言 >> 編程綜合問答 >> visual studio-opencv圖片讀入方式的區別

visual studio-opencv圖片讀入方式的區別

編輯:編程綜合問答
opencv圖片讀入方式的區別

最近開始學習opencv,用的vs2013版的,看到網上有很多圖片讀取的代碼,常見的有Mat img=imread("C:/../1.jpg"),括號裡放的是圖片的路徑,但是有的是寫的Mat img=imread(argv[1],1),而且代碼中從頭到尾也沒有讀取圖片的路徑,請問這是怎麼回事,

最佳回答:


首先知道什麼是帶參數的主函數:
一般情況下(許多教科書中都沒有說明),我們在寫程序的時候,往往忽略了主函數的參數,例如:
int main()
{

return 0;
}
在命令行下,輸入程序的名稱就可以運行程序了。實際上,我們還可以通過輸入程序名和相關的參數來為程序的運行提供更多的消息。參數緊跟在程序名後面,參數之間用空格分開。
這些參數被稱為:command-line arguments(命令行參數),也往往被稱為程序的argument list(參數表)。例如,在Linux終端,用戶可以輸入ls –l顯示目錄下文件的詳細信息。這個命令中,ls是程序名稱,用戶調用該程序,它有一個輸入參數-l。
main函數通過兩個參數獲取輸入參數表信息,分別是argc和argv。第一個參數是一個整型的變量,它記錄了用戶輸入的參數的個數。第二個參數argv是一個char型的指針數組,它的成員記錄了指向各參數的指針。argv[0]是程序名,argv[1]是第一個參數。
例如:(TC3.0編譯環境,Windows XP)
#include
int main(int argv, char *argc[])
{
printf("/nthe name of the program is %s /n", argc[0]);
printf(" the program has %d argument! /n", argv - 1);
if(argv > 1)
{
int i;
printf("the arguments are:/n");
for(i=1; i<argv; i++)
{
printf("%s/t",argc[i]);
}
}
return 0;
}

當用戶在命令行下輸入:mytest
輸出:
the name of the program D:/WINYES/TCPP30E/OUTPUT/MYTEST.EXT
the program has 0 argument!
當用戶在命令行下輸入:mytest aa bb cc dd e
輸出:
the name of the program D:/WINYES/TCPP30E/OUTPUT/MYTEST.EXT
the program has 5 argument!
The arguments are:
aa bb cc dd e

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved