C++學習之main函數以及帶形參的main函數

     C++程序包含一個或者多個函數,但是必須有一個函數被命名爲main函數。操作系統通過調用main函數來執行程序,main函數是操作系統唯一顯式調用的函數。main函數在執行結束後會返回給操作系統一個值,該值必須是int型的,通常返回值0代表程序執行成功,而其它返回值在操作系統中也有相應的含義。

     通常我們使用的main函數都是不用帶形參的,但其實main函數也是可以帶形參的。在C/C++語言中,main()函數有參數形式:int main(int argc,char *argv[]) 或者 int main(int argc,char **argv),那麼其參數argc和argv有什麼含義呢?argc是一個整型變量,指的是命令行輸入參數的個數,argv是字符串數組,它包含argc個字符串,每個字符串存儲着一個命令行參數,如argv[0]存儲着第一個命令行參數字符串,argv[1]存儲着第二個命令行參數字符串,argv[argc-1]存儲着最後一個命令行參數字符串.一般來說,argv[0]存儲的是當前程序的路徑與全稱.其中argc和argv就是一個名字,可以改變的,如寫成arc和arv,絲毫不影響。下面舉個例子,如何能夠使用上述帶有參數的main函數。

程序演示:文件名稱爲main11

#include <iostream>
using namespace std;
int main(int arc, char *arv[])
{
 for (int i=0; i<arc; i++)
  cout<<"argv["<<i<<"] = "<<arv[i]<<endl;

  return 0;

}

通過編譯連接後,可以得到main11.exe文件。

之後可以通過命令行輸入來演示,步驟是,打開cmd窗口,cd到main11.exe所在的文件夾,

然後輸入main11 Shanghai Jiaotong EE zhougy。之後你便會看到如下演示

 

 

從上述這個例子我們可以清楚地看到argc就是你輸入的命令參數的個數,此處argc=5,然後字符串數組argv裏面每個數組元素存儲的是所輸入的參數。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章