當前位置:首頁 » 編程軟體 » 編譯mainc命令

編譯mainc命令

發布時間: 2023-11-13 09:20:32

c語言中的main函數參數作用

在調用可執行程序時,可以通過main函數的參數將命令行的調用參數傳遞給main函數。

事實上,main()函數既可以是無參函數,也可以是有參的函數。對於有參的形式來說,就需要向其傳遞參數。

從函數參數的形式上看,包含一個整型和一個指向字元指針的指針。當一個C的源程序經過編譯、鏈接後,會生成擴展名為.EXE的可執行文件(對windows操作系統而言),這是可以在操作系統下直接運行的文件,換句話說,就是由系統來啟動運行的。由系統在啟動運行時傳遞參數。

在操作系統環境下,一條完整的運行命令應包括兩部分:命令與相應的參數。其格式為:

命令參數1參數2....參數nt;

此格式也稱為命令行。命令行中的命令就是可執行文件的文件名,其後所跟參數需用空格分隔,並為對命令的進一步補充,也即是傳遞給main()函數的參數。

命令行與main()函數的參數存在如下的關系:

設命令行為:program str1 str2 str3 str4 str5

(1)編譯mainc命令擴展閱讀:

main 函數的返回值類型必須是 int ,這樣返回值才能傳遞給程序的激活者(如操作系統)。

如果 main 函數的最後沒有寫 return 語句的話,C99 規定編譯器要自動在生成的目標文件中(如 exe 文件)加入return 0; ,表示程序正常退出。不過,我還是建議你最好在main函數的最後加上return 語句,雖然沒有這個必要,但這是一個好的習慣。

也就是說在最新的C語言標准中強制要求main函數的返回值類型為int,main函數的返回值是傳遞給操作系統,讓操作系統判斷程序的執行情況(是正常結束還是出現異常)。

⑵ 帶參數的main函數,應該怎樣運行呢

1、首先打開編程軟體,輸入一個c語言的源碼來測試。

⑶ 如何用命令行運行java程序及輸入main函數參數的輸入

main函數也可以帶參數。帶參數main函數的定義格式如下:
void main(int argc, char *argv[])
{
... ...
}
argc和argv是main函數的形式參數。這兩個形式參數的類型是系統規定的。如果main函數要帶參數,就是這兩個類型的參數;否則main函數就沒有參數。變數名稱argc和argv是常規的名稱,當然也可以換成其他名稱。
那麼,實際參數是如何傳遞給main函數的argc和argv的呢?我們知道,C程序在編譯和鏈接後,都生成一個exe文件,執行該exe文件時,可以直接執行;也可以在命令行下帶參數執行,命令行執行的形式為:
可執行文件名稱 參數1 參數2 ... ... 參數n

執行文件名稱和參數、參數之間均使用空格隔開。例如,在linux下運行程序./a.out 1 2 ,可執行文件名稱為./a.out,參數1為字元串1,參數2為2。
如果按照這種方法執行,命令行字元串將作為實際參數傳遞給main函數。具體為:
(1) 可執行文件名稱和所有參數的個數之和傳遞給argc;所以上面的argc=3
(2) 可執行文件名稱(包括路徑名稱)作為一個字元串,首地址被賦給argv[0],參數1也作為一個字元串,首地址被賦給argv[1],... ...依次類推。

⑷ linux 怎麼編譯c的源程序的gcc,編譯命令是什麼

在Linux下面,如果要編譯一個C語言源程序,我們要使用gcc編譯器。

先將源文件編譯成目標文件:gcc - c hello.c

生成hello.o文件,再將目標文件編譯成可執行文件:gcc -o hello hello.o

如:

int main(int argc,char **argv)

{

printf("Hello Linux ");

}

(4)編譯mainc命令擴展閱讀:

在使用GCC編譯器的時候,我們必須給出一系列必要的調用參數和文件名稱。GCC編譯器的調用參數大約有100多個,這里只介紹其中最基本、最常用的參數。具體可參考GCC Manual。

GCC最基本的用法是∶gcc [options] [filenames]

其中options就是編譯器所需要的參數,filenames給出相關的文件名稱。

網路_gcc

⑸ C語言中的main()函數

一、定義

main函數,又稱主函數,是程序執行的起點,main是相對來說的,如同音學理論之主調於泛音,泛音即程序中的除main之外的其他函數,迎合人們的思考方式而生成的而非必定的模式.有主有次,執行起來條清縷析,既可將程序模塊化又實現了一個閉合的整體。

二、main()函數的形式

在最新的 C99 標准中,只有以下兩種定義方式是正確的:

int main(void) /*無參數形式*/
{
...
return 0;
}
int main(int argc, char *argv[]) /*帶參數形式*/
{
...
return 0;
}
int指明了main()函數的返回類型,函數名後面的圓括弧一般包含傳遞給函數的信息。void表示沒有給函數傳遞參數。

三、main()函數的返回值

從前面我們知道main()函數的返回值類型是int型的,而程序最後的 return 0; 正與之遙相呼應,0就是main()函數的返回值。那麼這個0返回到那裡呢?返回給操作系統,表示程序正常退出。

因為return語句通常寫在程序的最後,不管返回什麼值,只要到達這一步,說明程序已經運行完畢。而return的作用不僅在於返回一個值,還在於結束函數。

四、main()函數的參數

C編譯器允許main()函數沒有參數,或者有兩個參數(有些實現允許更多的參數,但這只是對標準的擴展)。這兩個參數,一個是int類型,一個是字元串類型。

第一個參數是命令行中的字元串數。按照慣例(但不是必須的),這個int參數被稱為argc(argument count)。第二個參數是一個指向字元串的指針數組。命令行中的每個字元串被存儲到內存中,並且分配一個指針指向它。

按照慣例,這個指針數組被稱為argv(argument value)。系統使用空格把各個字元串格開。一般情況下,把程序本身的名字賦值給argv[0],接著,把最後的第一個字元串賦給argv[1],等等。

(5)編譯mainc命令擴展閱讀

C++中的main函數的應用:

C++繼承了C語言的大部分特性,因此保留了「程序總是從main函數開始執行,且總是默認從main函數的return語句或結尾處結束運行」這一傳統,但是要注意,C++中的main函數要想作為程序執行的出入口,必須寫在全局(Global)范圍,不能寫成某個結構體或某個類的成員。

雖然main函數可以作為結構體或者類的成員函數,但相應地會失去作為程序出入口的功能。C++中全局main函數的書寫格式與C語言完全相同,功能也完全相同,且同一C++程序同樣只能有一個全局main函數。

熱點內容
hp存儲擴容 發布:2024-11-17 23:29:16 瀏覽:567
在ftp中put表示什麼 發布:2024-11-17 23:29:12 瀏覽:381
mvc多文件上傳 發布:2024-11-17 23:13:56 瀏覽:153
玩游戲硬碟緩存32m 發布:2024-11-17 23:03:42 瀏覽:523
藍光存儲系統 發布:2024-11-17 23:03:41 瀏覽:434
地平線4提示配置低於最低怎麼辦 發布:2024-11-17 22:54:38 瀏覽:608
注冊銀行卡賬戶密碼填什麼 發布:2024-11-17 22:54:35 瀏覽:535
java壓縮上傳圖片 發布:2024-11-17 22:26:59 瀏覽:626
plc編程課件 發布:2024-11-17 22:18:23 瀏覽:468
我的世界伺服器信號一直在檢測 發布:2024-11-17 22:09:52 瀏覽:547