在調(diào)試程序時(shí)我們經(jīng)常會(huì)看到main函數(shù)有兩個(gè)傳遞參數(shù) main(int argc, char **argv),這兩個(gè)參數(shù)到底是什么呢?有時(shí)候很多人就弄迷糊了。實(shí)際上很簡(jiǎn)單:
1、第一個(gè)參數(shù)argc表示參數(shù)傳遞的個(gè)數(shù);第二個(gè)參數(shù)中argv[0]為自身運(yùn)行目錄路徑和程序名,argv[1]指向第一個(gè)參數(shù)、argv[2]指向第二個(gè)參數(shù)、等等。
2、那么argv[]傳遞在哪里設(shè)置呢,如下圖所示,查看工程的屬性就可以看的到:

1526906975(1).png
3、重點(diǎn)來了,注意!注意?。。?br> 上面說了main函數(shù)中的第一個(gè)參數(shù)argc代表的是向main函數(shù)傳遞的參數(shù)個(gè)數(shù),實(shí)際上它要比你在命令行里輸入的數(shù)據(jù)多一個(gè),因?yàn)榈谝粋€(gè)參數(shù)它保存了該程序的路徑名, 也就是說如果你向命令行中輸入2個(gè)數(shù),則argc 實(shí)際上等于3, 第二個(gè)參數(shù) argv保存的命令面板中的輸入的參數(shù)值,第一個(gè)值是該應(yīng)用程序的路徑名,后面依次是輸入的數(shù)據(jù)的值。
以上內(nèi)容希望對(duì)你有所幫助
20180521
我是蠟筆小胖