1. 程式人生 > >C/C++生成的exe檔案如何傳引數到main中

C/C++生成的exe檔案如何傳引數到main中

Main函式引數argc,argv說明:

 

C/C++語言中的main函式,經常帶有引數argc,argv,如下: 

 
  1. int main(int argc, char** argv)

  2. int main(int argc, char* argv[])

這兩個引數的作用是什麼呢?argc 是指命令列輸入引數的個數,argv儲存了所有的命令列引數。假如你的程式是hello.exe,如果在命令列執行該程式,執行命令為: 
hello.exe Shiqi Yu
那麼,argc的值是 3,argv[0]是"hello.exe",argv[1]是"Shiqi",argv[2]是"Yu"。   

下面的程式演示argc和argv的使用:  

 
  1. #include <stdio.h>

  2. int main(int argc, char ** argv)

  3. {

  4. int i;

  5. for (i=0; i < argc; i++)

  6. printf("Argument %d is %s.\n", i, argv[i]);

  7. return 0;

  8. }

假如上述程式碼編譯為hello.exe,那麼執行 
hello.exe a b c d e
將得到  
Argument 0 is hello.exe.
Argument 1 is a.
Argument 2 is b.
Argument 3 is c.
Argument 4 is d.
Argument 5 is e.
執行  
hello.exe lena.jpg
將得到  
Argument 0 is hello.exe.

Argument 1 is lena.jpg.

 

reference:

http://topic.csdn.net/u/20080622/09/6447dfb1-e34e-4e57-8b30-d9f304d8b626.html

參考文獻:

https://blog.csdn.net/peerlessbloom/article/details/7039925