国产一区在线观看视频-国产一区在线免费观看-国产一区在线视频-国产一区在线视频观看-国产一区中文字幕在线观看-国产一线二线三线女

正在閱讀:C/C++中命令行參數的原理C/C++中命令行參數的原理

2005-03-03 09:55 出處:PConline 作者:管寧 責任編輯:xietaoming

  很早以前的dos應用程序中,我們經常會用命令行參數執行應用程序例如:

copy c:\1.txt d:\

  在c/c++中,命令行參數的傳遞是利用main進行形參傳遞實現的

  前面的教程中我們對面都進行了void main()或者是void main(void)的定義,這表示main不返回任何類型,和main不帶有任何參數,但在缺剩狀態下mian()這樣形式下,形式參數一直是存在在?臻g內的只是隱藏了起來。

  為了實現命令行參數我們將使用main(int argc,char* argv[])這樣的形式進行定義argc和argv可以換成你自己喜歡的名稱,不一定要用argv,argc這些形式只是習慣而已,char* argv[]我們前面已經講述過,這就是一個指向指針數組,argv就是一個指針數組名,argv不是常量指針,而是具備變量特性的變量指針,它是可以移動的,由此我們可以改寫成char* *argv也是正確的,int argc這個定義返回的將是參數的個數所以標記為整形(int)。

#include <iostream
#include <string
using namespace std; 
 
void main(int argc,charargv[])   

    int i=0; 
    while(i<argc
    { 
        cout<<*argv++<<endl;//這里改寫成cout<<argv[i]<<endl;也是正確的 
        i++; 
    } 
    cin.get(); 

  在命令行參數的提交中,系統會自動給指針數組后加上一個NULL,所以代碼可以寫成如下簡單形式,簡化代碼提高效率。

#include <iostream
#include <string
using namespace std; 
 
void main(int argc,charargv[])   

    while(*argv!=NULL)//這里寫成while(*argv)也是正確的! 
    { 
        cout<<*argv++<<endl; 
    } 
    cin.get(); 
}

  最后我們說一下完整的命令行參數的原形:void main(int argc,char* argv[],char* env[])

  env用的很少,通常是用做事件的返回,這里就不討論了,具體的可以查詢書籍。

  void main(int argc)省略其它參數的定義也是可以的,這樣運行時候就直接返回參數個數學,而不返回其它。

  運行命令行參數帶有char* argv[]的時候,如果輸入參數帶有空格式,應該用雙引號闊起來。

  例如 test4.exe "hello world!" ha ha

 

302 Found

302 Found


Powered by Tengine
tengine
主站蜘蛛池模板: 久久一级 | 91新网站| 女人与女zzzoooxxxx | 四虎8848| 国产成人一区二区在线不卡 | 亚洲欧美综合人成野草 | 亚洲国产成人精品女人久久久 | 日韩中文字幕在线不卡 | 一区在线免费观看 | 国产妇乱子伦视频免费 | 国产精品自拍视频 | 欧美一级影院 | 欧美精品色视频 | 手机看片福利日韩欧美看片 | 久久乐国产精品亚洲综合m3u8 | 天天夜天天干 | 色综合亚洲综合网站综合色 | 亚洲国产高清一区二区三区 | 国内精品久久久久久久999下 | 亚欧在线视频 | 亚洲精品在线看 | 黄片123 | 色噜噜国产精品视频一区二区 | 国产成人久久精品 | 天天干天天插 | 97视频免费上传播放 | 天天久久狠狠色综合 | 91精品免费观看 | 年级的后妈妈2中文翻译 | 午夜精品久久久久久 | 久久国产精品广西柳州门 | 欧美视频在线一区二区三区 | 日韩在线1| 成人在线精品 | 爱爱毛片| 欧美国产高清 | 国产成人一区免费观看 | 四虎影视884a精品国产古代 | 在线国产一区二区三区 | 毛片一级视频 | 日韩欧美亚洲国产精品字幕久久久 |