main函式中的return
$ vi main.c
編寫main函式的內容,main函式的注意其括號裡擁有完整的引數
#include
intmain
(int ar**,
char
* argc)
第一條指令gcc執行成功就會接著執行main.out指令
$ gcc main.c -o main.out && ./main.out
hello world
$ ls
main.c main.out
// 若直接執行,也可以執行
$ ./main.out
hello world
如何判斷是否正常執行?
每次編譯之後輸入echo $?
,若輸出為0
,則表示程式正常執行
$ echo
$?0
main函式中的引數
copy 上述的main.c檔案並編寫新的檔案
cp main.c main2.c
vi main2.c
這裡我們試著列印出ar**這個整數,需要系統進行傳參,所以就有main函式裡的引數
#include
int main(int ar**, char* argc)
$ gcc main2.c -o main2.out
$ ls
main2.c main2.out main.c main.out
$ ./main2.out
ar** is 1
我們可以知道ar**應該是乙個整數,但為什麼是1呢,這裡我們做個實驗
$ ./main2.out
ar** is 1
$ ./main2.out -l
ar** is 2
$ ./main2.out -l -a
ar** is 3
這裡我們可以知道實際就是傳的引數有幾個,那麼我們就要考慮我們不僅要知道有幾個引數,還要知道引數的具體型別
$ cp main2.c main3.c
$ vi main3.c
編寫**如下,cat main3.c
可檢視**內容,其中%s表示字串
#include
intmain
(int ar**,
char
* argc)
return0;
}
編譯並驗證
$ gcc main3.c -o m3.out
$ ls
m3.out main2.c main2.out main3.c main.c main.out
$ ./m3.out -l -a adsf sdg
ar** is 5
argc[0] is ./m3.out
argc[1] is -l
argc[2] is -a
argc[3] is adsf
argc[4] is sdg
可看到我們輸入了5個引數,並顯示了5個引數的內容
學習結束啦!
main函式的入口函式
作業系統裝載程式之後,首先執行的 並不是main的第一行,而是某些別的 這些 負責準備好main函式執行所需要的環境,並且負責呼叫main函式,執行這些 的函式稱為入口函式或入口點 entry point 視平台的不同而有不同的名字。程式的入口點實際上是乙個程式的初始化和結束部分,它往往是執行庫的一...
main函式的引數
c程式最大的特點就是所有的程式都是用函式來裝配的。main 稱之為主函式,是所有程 序執行的入口。其餘函式分為有參或無參兩種,均由main 函式或其它一般函式呼叫,若呼叫 的是有參函式,則引數在呼叫時傳遞。main f1 int a,int b f2 int m,int n 在前面課程的學習中,對m...
main函式的引數
main函式可以不帶引數,也可以帶引數,這個引數可以認為是 main函式的形式引數。c語言規定main函式的引數只能有兩個,習慣上這兩個引數寫為argc和argv。因此,main函式的函式頭可寫為 main argc,argv c語言還規定argc 第乙個形參 必須是整型變數,argv 第二個形參 ...