首頁>Club>
2
回覆列表
  • 1 # 使用者2531970606522

    int main(int argc, char** argv)

    這是對main函式的變形。

    一般的main函式的格式為

    int main()

    這樣的程式假設編譯後產生的可執行檔案是a.exe,那麼執行的時候我們在命令列輸入

    a.exe

    回車後程序就運行了。

    但如果我們輸入

    a.exe -p 192.168.1.1

    回車後程序也只是照常執行,在程式中執行時根本不知道我們在a.exe後面帶了兩個引數-p和192.168.1.1。

    int main(int argc, char** argv)

    這種格式的main函式就是來解決這個問題的。 這種程式編譯後的可執行檔案在執行時,程式中可以透過變數argc知道命令列上的引數個數(包括程式名和後面帶的引數),比如輸入

    a.exe -p 192.168.1.1

    回車後程序中變數argc的值是3,表示命令列上有程式名和2個附帶引數。

    如果我們想要知道程式名和後面的附帶引數是什麼字串,我們就可以透過

    argv[0]訪問到程式名,argv[1]、argv[1]訪問到後面的附帶引數"-p"和"192.168.1.1"

    #include <iostream>

    using namespace std;

    int main(int argc, char** argv)

    {

    cout << "argc=" << argc << endl;

    for(int i=0; i<argc; i++)

    cout << "argv[" << i << "]=" << argv[i] << endl;

    return 0;

    }

  • 中秋節和大豐收的關聯?
  • 蘭花觀賞價值在哪裡?怎麼辨別蘭花的價值?