VC裡面的main 函式

2021-05-23 11:35:34 字數 1429 閱讀 8809

通過main()函式的引數給程式增加一些處理資訊,可以使程式和使用者實現更多互動式的通訊. 如果你的程式需要命令列引數編譯的話,那麼源程式的主函式main()就需要帶引數—也就是所謂的命令列引數。帶有引數的main()函式頭格式為:

void main(int argc, char * argv) 或void main(int argc, char ** argv)

其實,argc和argv也可以寫成其他的合法識別符號(identifier)來表示,我在這裡遵從一般情況.

下面來看看這兩個引數的具體含義:

第乙個引數argc是int型的,它用來存放命令列引數的個數,實際上argc所存放的數值比命令列引數的個數多1,即將命令字(可執行檔名)也計算在內。

第二個引數argv是乙個一維的一級指標陣列,它是用來存放命令列中各個引數和命令字的字串的,並且規定:

argv[0]存放命令字

argv[1]存放命令列中第乙個引數

argv[2]存放命令列中第二個引數

… 這裡,argc的值和argv各元素的值都是系統自動組賦值的。

下面是乙個可以進行命令列引數編譯的具體例子(vc++6.0下除錯通過):

//test.cpp

#i nclude

void main(int argc, char *argv)

} 上述原始檔經過編譯連線後生成可執行檔案test.exe.

這時我們沒有對引數進行設定,系統自動賦值給引數,執行後得到的結果是:

the number of command line arguments is:1

the program name is:e:/project/test/debug/test.exe

press any key to continue

然後在vc中, 我們進行如下設定: 在 project-->setting -->debug-->program arguments裡面任意設定命令列引數(隨便輸入啦):

this is the first time i post documents here.^_^

那麼:

argv[1]存放命令列中第乙個引數 ,即this

argv[2]存放命令列中第二個引數 ,即is…

然後執行,得到的結果是:

the number of command line arguments is:10

the program name is:e:/project/test/debug/test.exe

the command line arguments:

this

is the

first

time

i post

documents

here.^_^

press any key to continue

VC裡面的cstring跟int char 轉化

1 cstring,int,string,char 之間的轉換 string 轉 cstring cstring.format s string.c str char 轉 cstring cstring.format s char char 轉 string string s char string...

c語言陣列放在main函式裡面和外面的區別

最近a演算法題的時候碰到一道題 乙個數列前三項都為1,之後每項的值等於前三項之和,求第20193024項的最後4位數字。一開始寫的 如下 結果一直爆 terminated due to signal segmentation fault 11 這個錯誤,改了好久沒改出來。之後在stackoverfl...

numpy裡面的argmax函式

函式原型 def argmax a,axis none,out none a 輸入array axis 為0代表列方向,為1代表行方向 out 結果寫到這個array裡面 1 從簡單的一維開始 import numpy as np a np.array 3,1,2,4,6,1 bb np.argma...