關於main函式的輸入變數

2021-06-09 22:14:02 字數 1018 閱讀 1467

程式設計最基礎的函式就是main函式,乙個程式的入口就是main函式。每個初學者都知道,main函式的輸入變數為void,輸出變數為void或者 int,乙個簡單的main函式通常如下

#include int main()

其實在編寫main程式時候有時候也可以有輸入變數。argc 和 argv就是其中兩個。帶引數的main函式書寫如下

int main (int argc, char *argv)

argc 和 argv 如同 printf 裡面的第乙個變數和後面變數的關係。第乙個變數,argc指出後面變數的個數。而其他所有變數都儲存在argv裡面。argv是乙個陣列變數,存放了所有變數的位址。這樣,就可以新增任意數量的變數,而同時使程式能夠順利編譯。

在main函式中呼叫argc和argv的好處是在執行程式時候可以從外部引用其他檔案或者變數。比如在linux裡面執行gcc命令:

gcc -o myprog myprog.c

gcc, -o, myprog 和myprog.c就是四個變數。程式執行時

argc

4 argv[0]

gcc

argv[1]

-o argv[2]

myprog

argv[3]

myprog.c

這樣就實現了對於變數的傳遞。

編寫下面程式,並命名為myprog

#include int main (int argc, char *argv)

}else

return 0;

}

在linux命令列中輸入 ./myprog.exe a b c,此時程式執行的結果就是

argv[1] = a

argv[2] = b

argv[3] = c

關於main函式的引數

歷史上大多數unix系統支援main函式帶有三個引數 int main int argc,char argv,char env extern char environ 因為iso c規定main函式只有兩個引數,所以posix.1也規定應使用environ而不使用第三個引數。下面的例子展示了main...

關於帶引數的main函式

main 函式既可以是無參函式,也可以是有參的函式。對於有參的形式來說,就需要向其傳遞引數。但是其它任何函式均不能呼叫main 函式,當然也無法向main 函式傳遞,只能由程式之外傳遞而來。這個具體的問題怎樣解決呢?我們先看一下main 函式的帶參的形式 main argc,ar int argc,...

C C 關於main函式的引數的問題

記得我第一次學習c語言的時候我的老師跟我們說,他教的c語言就想中國的樓房一樣,現在講的沒什麼問題,但是在以後章節中我會親手推到我教你們的知識。跟中國的樓房一樣,推到了再建,建好了再推到。我記得第一次寫main函式的時候是這樣的格式 void main 這個格式好想是c89的格式,我學習c語言的風格就...