c語言中的main函數
❶ c語言main函數的位置是什麼
C語言中main函數可以在任意位置。
每一個C語言程序有且只有一個主函數(main()),且程序必須從main()函數開始,它是程序開始時調用的第一個函數。函數定義形式:【int main(void){}】。
C語言規定,在一個C程序中,main()函數可以在任意位置。
解析:
每個C程序有且只有一個主函數(main),且程序必須從main()函數開始執行,而且main()函數可以放在程序中的任意位置。
詳細介紹:
在宿主環境中編譯的C程序必須定義一個名為main的函數,這是程序開始時調用的第一個函數。
main()函數的定義有以下兩種形式:
(1)函數沒有參數,返回值為int類型。int main( void ) { /*…*/ }.
(2)函數有兩個參數,類型分別是int和char**,返回值是int類型。int main( int argc, char *argv ) { /*…*/ }.
這兩種定義方式都符合C語言標准。除此之外,許多C的實現版本還支持第三種、非標准語法的定義方式:int main( int argc, char *argv, char *envp ) { /*…*/ }.
函數返回值是int,有3個參數:第一個是int,另外兩個是char**。
❷ 在C語言中,main函數的意義是什麼
主函數main()是一個c語言程序開始運行的標志,也就是說,一程序開始執行都是從主函數開始的,不管主函數的位置在哪裡。
❸ C語言中main()函數的作用是拜託了各位 謝謝
void
main()函數是
C程序
處理的起點.main()函數可以返回一個值,也可以不
返回值
.如果某個函數沒有返回值,那麼在它的前面加個前綴
void
一個最最簡單的例子
#include<stdion.h>
void
main()
{
printf("測試\n");
}
就會直接輸入
"測試"
二字
❹ 初學編程,C語言中的main函數
考慮到main函數的特殊性,lz不明白這個問題可以理解。
main()是省略了返回值類型,C語言會默認認為成main的類型為int,在main()的函數體內要返回一個值,如return 0;
而void main()的返回值是void類型,也就是說沒有返回值。這樣在main()的函數體內你就不用寫return 0;或者return 1;之類的返回語句。
在一個程序中,可以說你看不出兩者的差別,因為main()是C語言的入口點,入口點如果返回了程序也就結束了,因此C語言的這個特性似乎沒用。可沒用的話,C語言的設計者為什麼要這么做呢?!肯定有用。
沒錯,前面我說的是在一個程序中,它似乎沒用。可如果一個程序prog2調用另一個程序prog1的話(這里指的是prog2直接調用prog1編譯好的可執行文件),那麼這個特性就有用了。因為prog2要知道prog1運行之後的狀態。比如你用C寫了一個刪除文件的程序(暫且命名為delf),然後用另一個程序去調用delf,那麼調用結果怎麼樣啊?這個文件是否刪掉了?這是int main()就會派上用場了。C語言中默認的main如果返回為0,那麼這個程序調用就成功了,其他值,則為不同的錯誤代碼。在你的delf程序中,如果那個文件刪除成功,那麼就在int main()中返回0,其他調用delf的程序就知道,噢,這個操作成功了。
在unix/linux系統中的很多命令都是通過這種方式獲得運行結果的。
關於譚浩強的書,我想不用多說,發行量說明了一切。畢竟第二版在編寫的時候還比較早,而第三版根據很多現在的需要進行了改寫,內容當然會好些。鑒於lz是初學C,其實大可不必在這個問題上浪費太多時間,當你有了更多的項目經驗,對這個問題會有更深刻的理解。
上面我已經給出了main()、int main()和void main()的區別,但建議lz忽略這個差別,認為成二者一樣,先把C的其他部分學好。至於只寫成main(),我並不推薦,就算編譯器通過了,這種編程的風格也太不嚴謹,不利於好的習慣的養成。
❺ C語言中 main 是什麼意思
解釋如下:
1、int main()是C語言main函數的一種聲明方式;
2、int表示函數的返回值類型,表示該主函數的返回值是一個int類型的值;
3、main表示主函數,是C語言約定的程序執行入口,其標準的定義格式為int main(int argc, char *argv[]);在int main()中,()中沒有數值表示入參為空,等同於int main(void);
4、事例中printf("%f",a);表示將a的值作為浮點類型列印出來,在屏幕上顯示,而主函數的返回類型int會將返回的值回傳給主調進程,而不是在屏幕輸出。
5、因此,printf的輸出類型跟主函數的返回類型沒有關系,互不關聯。事例中,return 0 對應才是主函數的返回值類型。
拓展資料
在C語言當中,一個程序,無論復雜或簡單,總體上都是一個「函數」;這個函數就稱為「main() 函數」,也就是「主函數」。比如有個「做菜」程序,那麼「 做菜 」這個過程就是「主函數」。在主函數中,根據情況,你可能還需要調用「買菜,切菜,炒菜」等子函數。
main函數在程序中大多數是必須存在的,但是依然有例外情況,比如windows編程中可以編寫一個動態鏈接庫(dll)模塊,這是其他windows程序可以使用的代碼。由於DLL模塊不是獨立的程序,因此不需要main函數。再比如,用於專業環境的程序-----如機器人中的控制晶元--可能不需要main函數。
❻ c語言main函數
//C語言由bell實驗室創立,但後續分支太多
//所以ISO(國際標准化組織)制定了統一標准
//目前通過的標准主要有3個C89C99C11
ASNSIX3.159-1989對應C89由ASNSI制定
ISO/IEC9899:1990還是C89,只是ISO從ASNSI那裡「抄襲」過來,又稱C90
ISO/IEC9899/AMD1:1995對於C89的補充,又稱C95
ISO/IEC9899:1999C99標准
ISO/IEC9899:2011C11標准
//關於main函數的標准在C89和C99又有差異
類型一,不指明返回類型
main(){return0;}
//這在C89中是合法的,因為不指明返回類型其實是隱含的告訴編譯器,這個函數返回類型是int
//這在C99中是非法的,因為C99要求顯式聲明所有函數
類型二,不書寫return...;在main函數中
intmain(void){}
//C89,函數返回值未定義
//C99,當main函數返回類型為int,且沒有寫return語句時,默認返回0
//C99,其他情況下,返回值未定義
類型三,定以返回值為非int
voidmain(void){return;}
//C89,非法(不bb,就是非法)
//C99,允許main函數返回類型由實現定義,支持void以及其他類型返回值
//所以你的編譯環境,不支持C99標准
//而你的書,比較「新」
//建議書寫標准宏編譯
#if__STDC_VERSION__>199901L//標准支持C99
voidmain(void)
#elifdefined__STDC__//支持標准C(89/99)
intmain(void)
#else//如果都不支持,我也很難受
#errorStandardCnotsupport
#endif
❼ main是什麼意思,在C語言中又是什麼意思
1、main
英[meɪn];
意思:主要的;最重要的;
2、在C語言里是main()稱之為主函數,是所有程序運行的入口。其餘函數分為有參或無參兩種,均由main()函數或其它一般函數調用,若調用的是有參函數,則參數在調用時傳遞。
對main()函數始終作為主調函數處理,允許main()調用其它函數並傳遞參數。main()函數既可以是無參函數,也可以是有參的函數。對於有參的形式來說,就需要向其傳遞參數。
(7)c語言中的main函數擴展閱讀
main在C語言里的使用
1、在C99標准中定義main函數兩種正確的寫法
intmain(void);intmain(intargc,char*argv[]);
2、常見的不標准寫法
voidmain()main()
3、主要說明帶參數的main函數
intmain(intargc,char*argv[])
{
inti;
for(i=0;i<argc;i++)
printf("%d:%s ",i+1,argv[i]);
return0;
}
❽ 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],等等。
(8)c語言中的main函數擴展閱讀
C++中的main函數的應用:
C++繼承了C語言的大部分特性,因此保留了「程序總是從main函數開始執行,且總是默認從main函數的return語句或結尾處結束運行」這一傳統,但是要注意,C++中的main函數要想作為程序執行的出入口,必須寫在全局(Global)范圍,不能寫成某個結構體或某個類的成員。
雖然main函數可以作為結構體或者類的成員函數,但相應地會失去作為程序出入口的功能。C++中全局main函數的書寫格式與C語言完全相同,功能也完全相同,且同一C++程序同樣只能有一個全局main函數。
❾ C語言里的主函數是什麼
main(),在c語言中稱之為「主函數」,一個c程序有且僅有一個main函數,任何一個c程序總是從main函數開始執行,main函數後面的一對圓括弧不能省略。
具體形式如下:
main()
{ }
被大括弧{ }括起來的內容稱為main函數的函數體,這部分內容就是計算機要執行的內容。
在{ }裡面每一句話後面都有一個分號(;),在c語言中,我們把以一個分號結尾的一句話叫做一個c語言的語句,分號是語句結束的標志。
(9)c語言中的main函數擴展閱讀:
函數是一組一起執行一個任務的語句。每個 C 程序都至少有一個函數,即主函數main(),所有簡單的程序都可以定義其他額外的函數。
您可以把代碼劃分到不同的函數中。如何劃分代碼到不同的函數中是由您來決定的,但在邏輯上,劃分通常是根據每個函數執行一個特定的任務來進行的。
函數聲明告訴編譯器函數的名稱、返回類型和參數。函數定義提供了函數的實際主體。
C 標准庫提供了大量的程序可以調用的內置函數。例如,函數strcat()用來連接兩個字元串,函數memcpy()用來復制內存到另一個位置。
函數還有很多叫法,比如方法、子常式或程序,等等。