C語言main函式一定要有返回值麼

時間 2023-02-21 10:20:09

1樓:匿名使用者

不一定,看你如何寫了:

int main() 要求有一個int型的返回值,返回語句return 0;

void main() 沒有返回值,返回語句return;或不寫。

其他函式也是這個規則。

在c語言中,主函式是不是必須要有返回值?

2樓:網友

main 函式的返回值型別必須是 int ,這樣返回值才能傳遞給程式的啟用者(如作業系統)。如果 main 函式的最後沒有寫 return 語句的話,c99 規定編譯器要自動在生成的目標檔案中(如 exe 檔案)加入return 0; ,表示程式正常退出。

在c語言標準中強制要求main函式的返回值型別為int,main函式的返回值是傳遞給作業系統,讓作業系統判斷程式的執**況(是正常結束還是出現異常)。

3樓:

按標準來說,c的main函式是需要有返回值的。標準中main函式返回型別是int的,所以需要一個返回值。

但是由於歷史原因,很多地方可以看到沒有返回值的main。比如直接main()或者說void main() 但是這樣一般編譯器也不會認為錯誤。

不過建議還是寫標準的c的main函式。最好有一個返回值。0表示正常退出。

打字不易 謝謝採納。

4樓:新疆丨精神

不是所有的都需要返還值。

c語言到底是不是必須要有main函式?

5樓:匿名使用者

c語言必須要有一個main函式,而且只能有一個main函式,這個函式叫主函式,它是第一個執行的函式。

一般來說,主函式應放在最後,其他被呼叫函式放在主函式前面。這樣的話,其他被呼叫函式可以不予先宣告。如果其他被呼叫函式放在了主函式後面,則在主函式之前一定要事先對被呼叫函式加以宣告。

c語言中的主函式固定名為:main(),每個系統中必須有一個,且只能有一個。它 是第一個執行的函式。

一般情況下,main()寫在檔案的最後面,其他被呼叫的函式放在前面,這樣定義函式之前可以不加宣告,如果放在主函式之後,則必須先宣告,再定義,再被呼叫。

6樓:

你可以這麼理解的, main 函式就是程式自動執行的第一個函式,沒有main,編譯程式時也會出錯。

7樓:網友

必須有main 函式的, 或者跟main函式同樣功能的,但不叫這個名字,大家都知道啦,比如windows下的main叫 winmain什麼的,main函式是程式的入口,如果用的c編譯器,那麼就會有入口的地方。否則計算機怎麼知道從**執行呢?

8樓:匿名使用者

呵呵 不知道你的c語言學到什麼程度啦,c語言必須有一個main函式這句話沒錯,在nuix系統核心可以沒有main函式,這句話也沒錯,c語言必須有main函式,但是等你慢慢學就會發現一個程式可能需要幾個c語言檔案,這時並不是在每個c語言檔案裡有一個main函式,其實只有一個,unix系統是一個作業系統,這個可以聯想windows作業系統,這個更高階的c語言應用,等你你慢慢學習更深入的東西,自然就明白啦,努力吧。

9樓:灬心羽

我只記得在unix下的c語言 main函式型別必須是int,必須要有返回值。

不同環境下的c語言會有少許差別。

也許是我孤陋寡聞了,但是我沒聽說過可以不寫main.

程式不知道從**開始那還得了?

10樓:網友

你老師沒說過c語言為什麼要main麼。。那麼為什麼沒有main你就理解了。。

11樓:匿名使用者

實際上 c函式是被底層的彙編呼叫的 只要名字只要合乎規則 可以隨便取 是不是main都行 只是現在的庫啟動檔案 都是呼叫main函式 所以你寫的c函式里要有main 如果自己寫啟動檔案 想怎樣就怎樣。

c語言中main函式可以沒有return語句嗎

12樓:匿名使用者

可以,但是return語句有助於檢錯,可以返回控制權給系統,防止被利用這個漏洞。

13樓:匿名使用者

感覺可以,平常我也不加。

14樓:海同職座標**

main沒有return函式,則預設返回一個隨機值。啟動該程式的程序不能判斷該程式是正常結束還是非正常結束。

15樓:璐人釔

看你的main是什麼型別咯,void的話就不用也行。

c語言中在主函式main前的加不加int有什麼區別啊?

16樓:匿名使用者

可以說加不加來int是沒有區別的。

源。在ansi c的標準中,baimain的標準返回值du是整型,如果你zhi什麼都沒有dao加,編譯系統會自動加上int型別的。這時如果你使用gcc的話(vc是沒有的)會有一個警告。

void是無型別,表示沒有返回值,你的主函式如果不需要返回的話,最好加上它。

最後,建議你的主函式顯式的使用int型別,並return 0;這是一個好習慣,開始的時候沒什麼用,時間長了才能看出來。

17樓:匿名使用者

int 返回型別,如果你main函式中return 數字;

而你前面寫的是void ,那麼會報錯;

18樓:匿名使用者

據我所知,main函式是c語言程式中唯一的主函式,前不能名int.

void是表示無返回值,可以不加。

c語言中函式必須有返回值嗎?沒有無法使用對嗎?

19樓:匿名使用者

不是必須有返回值。如果沒有返回值型別名為"void"。

void函式的定義:

void+函式名()/無型別+函式名。

{//程式**如果沒有返回值型別名為"void", 整數型別int 型別返回值為整數型別int,以此類推……

型別名有:void int long float int* long* float* …

20樓:匿名使用者

在c語言中,其實都是有返回值的,即使你不寫,編譯器,也會幫你預設,為空,希望可以幫到你,沒有,是可以使用的,只是這義氣會幫你補為空。

21樓:天空下的卵石

沒有返回值也可以,可以返回值為無的,但需要返回值**,返回的結果可以是空的。

22樓:匿名使用者

是的c語言函式中必須有返回值,不然無法使用。

23樓:古爾格

在寫函式時,我們一般用 型別+函式名 來定義函式,void型別是空返回值,也就是沒有返回值。

其他的,如int、double等型別函式,需要返回相應型別的返回值。

24樓:我的

不一定要有返回值,void函式不許需要有返回值,但函式依然可以呼叫。

25樓:匿名使用者

不一定哦,以void開頭就不需要return返回。

c語言 主函式中使用返回值有什麼作用

26樓:刀無極啊

main函式的返回值用於說明程式的退出狀態。如果返回0,則代表程式正常退出。返回其它數字的含義則由系統決定。

通常,返回非零代表程式異常退出。利用程式的返回值,我們可以控制要不要執行下一個程式。這就是int main的好處。

c語言void函式在main函式中使用的問題

逍遙散士 宣告和呼叫是兩回事,宣告void function void 括號中的void 是告訴編譯器此函式沒有引數,而呼叫時函式名後面的括號裡放時的是引數,你這樣去寫,就相當前面說明了無引數,後面又給它一個引數,程式當然出出錯了,另外呼叫時不寫返回值的型別,因為在宣告時已經寫過了,這可能是編譯器的...

在c語言中主函式是不是必須要有返回值

main 函式的返回值型別必須是 int 這樣返回值才能傳遞給程式的啟用者 如作業系統 如果 main 函式的最後沒有寫 return 語句的話,c99 規定編譯器要自動在生成的目標檔案中 如 exe 檔案 加入return 0 表示程式正常退出。在c語言標準中強制要求main函式的返回值型別為in...

在c語言程式中,被呼叫的函式必須在main函式中定義

這句話是錯的。如果在main 函式中定義函式,那就屬於函式巢狀了,一般不建議函式定義的時候進行巢狀。被呼叫的函式在呼叫之前必須進行宣告,因為所有程式執行是從main 開始的,所以建議宣告在main 之前。 我也不太懂。這句話恐怕是錯誤的。因為函式呼叫,如果被呼叫的函式放到main函式的前面,那麼就會...