c語言void子函式,求得的值在主函式裡怎麼輸出

2021-12-27 15:48:04 字數 1919 閱讀 3757

1樓:天蠍神經俠侶

把變數定義在主函式之外,即把變數設定為全域性的。

一般我們都把變數的定義放在函式中,因此變數的範圍就是在本函式中。可是如果定義在所有函式的外面,這樣所有的函式中,都可以使用本變數。

你可以試一下這個程式。定義一個全域性變數a,在主函式中進行賦值,然後在子函式中進行輸出,結果是5.

#include

int a;

void func();//函式宣告

int main()

void func()

當然,除了定義全域性變數這個方法,還有其他的方法,那就是指標。在子函式的引數中傳遞變數的地址,依然可以使用該變數,依然能夠改變該變數的值。因為主函式和子函式的變數共用的是同一個地址的變數,因此,不管在哪個函式中對變數進行操作,都會影響變數。

比如下面這個程式,在主函式中a的值為5,將變數a的地址傳遞過去,子函式將該地址中的變數的值設定為3,然後主函式輸出,結果卻是3.

#include

void func(int *b);//函式宣告

int main()

void func(int *b)

2樓:匿名使用者

最簡單的方法,將n1,n2,n3定義為全域性變數,放在#include 的下面

#include

int n1, n2, n3;

在main函式和find函式中將n1,n2,n3的定義都去掉,這樣就可以了

c語言,子函式計算的值如何在在主函式輸出

3樓:緩緩掉落的松針

#include

int main()

int f() //子函式的實現

其中這裡有個誤區,就是在子函式和主函式中 變數用了一個字母,很容易誤導新人以為那是一個變數,其實不然,子函式中的a在函式呼叫結束就已經不在了,主函式中的a又是另外一個變數。也可以不定義成一樣的字母,容易區分一點。

4樓:旅春冬

#include

int f()

int main()

c語言子函式計算的值如何在在主函式輸出?

5樓:緩緩掉落的松針

#include

int main()

int f() //子函式的實現

其中這裡有個誤區,就是在子函式和主函式中 變數用了一個字母,很容易誤導新人以為那是一個變數,其實不然,子函式中的a在函式呼叫結束就已經不在了,主函式中的a又是另外一個變數。也可以不定義成一樣的字母,容易區分一點。

c語言呼叫完void函式後如何將值返回主函式實現輸出的呢? void函式沒有返回值。。。是陣列不同

6樓:岔路程式緣

1、來c語言呼叫完void函式後如何自將值返回主函式實現輸出的呢?

答:因為 void函式沒有返回值,要想把讓函式的值帶回主函式,還有兩種辦法,第一是使用指標做引數,第二是瀠陣列做引數。

2、用指標傳遞就可以了嗎,那如果不用指標呢?

答:用指標當然可以啦。如果不用指標,那就選擇用陣列引數了。

7樓:匿名使用者

可以考慮讓呼叫者提供一個存放結果的陣列起始地址,函式將結果儲存在陣列中

8樓:匿名使用者

通過全域性變數實現修改

通過函式的指標引數完成返回

通過函式的引用引數完成返回

也可以把陣列作為引數直接在函式中修改

9樓:三城補橋

因為語法就是這樣啊,函式呼叫直接使用其函式名即可,函式是void型別只是標識該函式沒有返回值而已。

10樓:匿名使用者

把void函式換成傳值函式吧

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

int 和 void 決定了該函式的返回值型別。在main函式中,其返回值的型別還和編譯器有關內。在有些編譯器規定容main函式需要要有返回值,沒有返回值的話會警告,但不影響工作。在一些作業系統中,為判斷一個程式是否正常執行,通常也對該程式的main函式做相關規定。比如說 規定mian函式返回0為正...

c語言中main函式前面的void可不可以省略!省略與不省略

在 c89 標準中bai,main 是可以接受du的。不過在最新的 c99 標準中,只有以zhi下兩種定義方式是dao正確內的 int main void 整數型別主函式 無引數 int main int argc,char argv 整數型別主函式 整數型別 統計引數個數,字元型別 陣列指標至字元...

在呼叫函式時,函式是怎樣傳值的,c語言函式呼叫時,實參和形參是如何傳遞的?什麼時候要寫指標型變數?求高手指點

在c語言中,實參將值傳給函式中的形參,實現了自上而下的值傳遞,就可以呼叫函式了。舉個淺顯一點的例子吧 include void main int swap int x,int y 在主函式中,將實參a,b的值傳遞給被呼叫函式中的形參x,y,即將a,b分別代入x,y中計算,即達到了呼叫的目的。函式的傳...