c 語言中,函式宣告,用int和void有什麼區別

2021-05-14 03:05:37 字數 5120 閱讀 8765

1樓:星希望

int 和 void 決定了該函式的返回值型別。

在main函式中,其返回值的型別還和編譯器有關內。在有些編譯器規定容main函式需要要有返回值,沒有返回值的話會警告,但不影響工作。

在一些作業系統中,為判斷一個程式是否正常執行,通常也對該程式的main函式做相關規定。

比如說:規定mian函式返回0為正常執行,返回其他則表示執行出錯。所以有些程式在執行時會出現「執行出錯,錯誤**0x**」等提示。

而通常,在一些嵌入式領域,比如說微控制器程式設計,它的程式不基於任何作業系統,則使用int或則void完全看你個人喜好。

2樓:匿名使用者

這個是返回值上的區別,

int function()的返回值必須是int型別

void function()是不允許有返回值的

3樓:匿名使用者

用baiint 宣告的

函式返回值是int型別du,void宣告的函式zhi沒有返回值,我認為可以dao相當於pascal裡的「過專程屬

「(procedure)。

其實對函式的理解應該是:執行完函式之後將函式所在的位置用函式的返回值取代。

沒有返回值的函式的作用就是對傳給函式的引數做出一些處理,所以pascal裡才叫做procedure,但是在c++裡就直接宣告為無返回值的函式了。手打。

c語言中void main和int main有什麼區別

4樓:徜逸

1、有無返回值

void main沒有返回值,int main有返回值。

2、返回值型別

int main返回int型別的資料,void main不返回。

但是在c語言推薦寫法中,建議使用int main,因為在有的編譯器雖然viod main可以通過編譯,但在其他編譯器就會報錯。為了**擁有更好的可移植性,一般寫int main。

**示例

#include int main(void)

上述的**中為int main,返回了一個0,資料型別為int。

資料型別

void:宣告函式無返回值或無引數,宣告無型別指標,顯示丟棄運算結果。(c89標準新增)

char:字元型型別資料,屬於整型資料的一種。(k&r時期引入)

int:整型資料,表示範圍通常為編譯器指定的記憶體位元組長。(k&r時期引入)

float:單精度浮點型資料,屬於浮點資料的一種。(k&r時期引入)

double:雙精度浮點型資料,屬於浮點資料的一種。(k&r時期引入)

5樓:匿名使用者

void main 和 int main的區別就是有無返回值。

在int main 可以出現非 int 型別的東西。在寫**時,一個函式要麼有返回值,要麼沒有返回值沒有返回值就用void來表示。 main函式同樣的,在沒有返回值時加個void 。

有的編譯器必須main要有返回值 int , 那就寫成int main 。

至於什麼時候需要哪種寫法,不必有這種顧慮,你可以一律都寫成 int main ,然後在方法體中 最後加個return 0 ;就行了。

void main 和 int main 在作用上其實沒什麼區別啊,只是有的嚴謹的編譯器必須要main有int 返回值而已,這兩種寫法跟自定義的函式沒任何關係。

6樓:小莫

void main 和 int main 主要有以下三個方面的區別:

1、void main的返回值為空值(即沒有返回值),int main的返回值為整數型別值。

2、void main 可以用 int main代替,但是 int main 不能用 void main代替。

3、有的編譯器main必須要有返回值 int , 那就寫成int main 。

在使用中可以一律寫成 int main,然後在方法體中最後寫 return 0; 就行了,這樣寫基本上所有的編譯器都可以通過。

7樓:專揀米粒

1、void main沒有返回值,int main有返回值2、void main 可以用 int main代替。

3、有的編譯器main必須要有返回值 int , 那就寫成int main 。

8樓:匿名使用者

返回值型別不同。

標準的c語言要求main函式的返回值為int, 該值是執行程式時,告知主調程序程式執行結果的一個渠道。

可以在命令列執行exe後,通過

echo $?

命令獲取上一個可執行程式的執行結果。

不過由於大多數時候,程式的執行結果可以由其它方式判定,比如程式的列印資訊,所以main的返回值變得不重要,於是大部分編譯器都支援無返回值型別的main,這時預設返回給主調程序0值。

標準的main函式格式為

int main(int argc, char *argv);

即返回值為整型,帶兩個引數,argc為命令列引數的個數,argv為指標陣列,前argc個指標為引數列表,最後一個指標值為null。

9樓:匿名使用者

main函式的返回值是用來表示程式的退出狀態的,return 0表示無錯誤,其他的返回值根據系統不同可能代表不同的型別,如果不返回可能會無法檢測到錯誤。

另外一個原因是:如果返回值是返回到棧上的,則程式未返回值的情況下,程式的呼叫者會從棧上誤pop一個值認為是程式的返回值,這樣的話就會造成下面的操作錯誤,因為多pop了一個值。

10樓:澈力木格

void和int表示的是主函式的返回值,void返回的是空值,int返回的是一個整型數值。

用的是int main,在程式結束時必須寫上return 0(或者任何一個整數);而用的是void main就不需要return返回語句。

11樓:匿名使用者

c語言中用void main()

c++中用int main(),其中

int main()最後必須加return 0;

補充中的不可以,main是主函式,一個程式中只能有一個主函式。void aaa()是一個普通的函式,可以被主函式或者其他普通函式呼叫

12樓:浪哥

void main表示空的主函式,不需要返回值;

但是int main需要返回一個int型的值。

13樓:徐臨祥

那主調函式還.c語言中void main和int main有什麼區別,是不是在int main裡面不能出現非int型別的的東西阿,...

14樓:匿名使用者

在上面這種情況void和int可有可無,對結果不影響,只是為了書寫規範。

可以,其他函式也可以

15樓:紹凱文昕月

在dev-c++中必須寫成int

main,寫成int

main比較規範,返回0則表示程式正常退出。

主函式int與void有什麼區別?c語言

16樓:匿名使用者

主函式返回值可以定義為兩種,int型或void型。區別在於int型main函式需要有返回值,而void型則不需要。

1、 main函式返回值作用:

每個c程式最終的目標是為了執行,也就是編譯成可執行檔案後,被執行。 main函式的返回值將被傳遞到主調程序中,主調程序可以通過返回值判斷是否執行正常。

2、在標準的c語言中,推薦主函式有返回值,並一般約定返回0代表程式工作無問題。

3、在呼叫一個可執行檔案時,並不能很直觀的得到返回值,而需要額外的操作。 比如在shell指令碼或者批處理中以變數儲存返回值並顯示,或者通過echo語句顯示特定的內建變數值。

4、由於獲取返回值比較麻煩,並不是特別實用,所以更常用的方式是在程式中新增列印資訊來提示是否執行成功。於是才有了void型別的main函式。

5、使用void型main函式,等於放棄了通過返回值來表明程式是否執行成功的渠道,這對於在shell指令碼或者批處理檔案中呼叫可執行程式時,判斷是否執行政策是很不利的,所以如果想要所寫的程式可以有更強的適應性,還是使用int作為main的返回值型別為好。

17樓:匿名使用者

void是不標準的,是不符合一般標準的,int本身是接收一個int型的返回值因此可以讓編譯器知道何時程式結束,void沒有返回值

18樓:fu法c克k油

型別不同。int代表整數。

void代表空。

在c語言中,int 函式與void 函式有什麼區別

19樓:會飛的小兔子

1、作用不同

主函式copy

返值可以定義為兩種,int型或void型。區別在於int型main函式需要有返值,而void型則不需要。

main函式返zhi值作用:每個c程式最終的目標是為了執行,也就是編譯成可執行檔案後,被執行。main函式的返dao值將被傳遞到主調程序中,主調程序可以通過返回值判斷是否執行正常。

2、操作方式不同

在標準的c語言中,推薦主函式有返回值,並一般約定返回0代表程式工作無問題。在呼叫一個可執行檔案時,並不能很直觀的得到返回值,而需要額外的操作。

比如在shell指令碼或者批處理中以變數儲存返回值並顯示,或者通過echo語句顯示特定的內建變數值。

3、結果的不同

使用void型main函式,等於放棄了通過返回值來表明程式是否執行成功的渠道,這對於在shell指令碼或者批處理檔案中呼叫可執行程式時,判斷是否執行政策是很不利的,所以如果想要所寫的程式可以有更強的適應性,還是使用int作為main的返回值型別為好。

20樓:ml中國夢

int 返回值為一個整數,void表示沒有返回值

21樓:傑~★~兒

int,表示計算機在bai存取資料

du時,是按四zhi個位元組從記憶體上存取,dao就好比要買一盒餅內幹容,一盒餅乾不能單獨一塊餅乾去賣,必須打包好一整盒才能賣。

那麼void就好比散裝的一塊一塊餅乾,不能一塊餅乾賣給你。拿到計算機上來說,就是void型別不能用來存放資料,必須需要強制轉換後才能使用。

22樓:給陽光1個微笑

int有返回值 void沒返回值

c語言中voidcon啥意思,C語言中void是什麼意思

宣告瞭一個函式名字叫con無引數返回值為void c語言中void是什麼意思 void 被翻譯為 無型別 相應的void 為 無型別指標 常用在程式編寫中對定義函式的引數型別 返回值 函式中指標型別進行宣告。void 的作用 1.對函式返回的限定,這種情況我們比較常見。2.對函式引數的限定,這種情況...

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

可以說加不加來int是沒有區別的 源。在ansi c的標準中,baimain的標準返回值du是整型,如果你zhi什麼都沒有dao加,編譯系統會自動加上int型別的。這時如果你使用gcc的話 vc是沒有的 會有一個警告。void是無型別,表示沒有返回值,你的主函式如果不需要返回的話,最好加上它。最後,...

C語言中double和int型的資料之間可相互賦值嗎

可以。如 double a 1.2 int b b a b 1 取整了 int a 1 double b b a b 1.00000 c語言中double 和int型的資料之間可相互賦值?可以。如 double a 1.2 int b b a b 1 取整了 int a 1 double b b a...