當前位置:首頁 » 編程語言 » c語言返回值函數調用

c語言返回值函數調用

發布時間: 2024-05-31 10:33:02

c語言中調用函數的返回值,如果是數組,主函數要輸出這個數組怎麼實現啊

用指針,另外保存數據的變數退出函數時不得消失。

例如:

#include<stdio.h>

int * fun(int n)

{

int i;

static int a[100]; // 這里用static

for (i=0;i<n;i++) a[i]=i;

return &a[0];

}

void main()

{

int i,n=5;

int *p; // 聲明指針

p = fun(n); // 返回指針

for (i=0;i<n;i++) printf("%d ",p[i]); // 把 p 看成數組來輸出

}

得 0 1 2 3 4

(1)c語言返回值函數調用擴展閱讀:

注意事項

1、數組宏棚的維度必須是一個常蔽段則量表達式

int main(void)

{

constexpr int i = 20;

int j = 5;//不是常量表達式

int arr1[i];//正確

int arr2[j];//錯誤

system("燃宏pause");

return 0;

}

2、默認情況下,數組的元素被默認初始化。

而且需要注意的是,和內置類型的變數一樣,如果在函數內部定義了某種內置類型的數組,那麼默認初始化會令數組有未定義的值。

㈡ c語言中調用函數如何返回多個值

1、通過使用指針,在函數調用時,傳遞帶有地址的參數,並使用指針更改其值;這樣,修改後的值就會變成原始參數。

㈢ c語言中,函數返回值怎麼用

return後接數蔽一個值。 在調用這個函數的函數裡面,調用它的時候希望獲得一個值,如果不希望獲得這個值的時候,用void聲明就好。如果需要,比如說需要得到一個整形值 就聲明 int func() 在調用它的比如main裡面 func()的作用就可以相當於一個int型常數 比如外面定義了 int max(int a,int b) { return a>b?a:b; } 主函數裡面是 main() { int A; A=max(1,2); } 這時候就是通過max計算 1>2 則return 一個1 ,謹畢孫1<2 則return一個2。很明顯1<2 所以這里max(1,2)就會return 一個 2 這時候主函數里的max(1,2)就相當於一個常數 2 A=max(1,2)的作祥鏈用就相當於A=2 這個意思。

㈣ C語言 函數返回值是什麼

函數的值(或稱函數返回值)是指函數被調用之後,執行函數體中的程序段所取得的值,可以通過return語句返回。

return語句的一般形式為:
return 表達式;
或者:
return (表達式);
例如:
return max;
return a+b;
return (100+200);
函數中可以有多個 return 語句,但每次調用只能有一個return 語句被執行,所以只有一個返回值。

一旦遇到 return 語句,不管後面有沒有代碼,函數立即運行結束,將值返回。例如:
int func(){
int a=100, b=200, c;
return a+b;
return a*b;
return b/a;
}
返回值始終 a+b 的值,也就是300。

沒有返回值的函數為空類型,用void進行說明。例如:
void func(){
printf("Hello world!\n");
}
一旦函數的返回值類型被定義為 void,就不能再接收它的值了。例如,下面的語句是錯誤的:
int a = func();
為了使程序有良好的可讀性並減少出錯, 凡不要求返回值的函數都應定義為空類型。

㈤ c語言中調用函數如何返回多個值

建立數組,返回指針。

在要返回的兩個值類型相同時,可以用創建數組的方式,將要返回的值存在數組中,並返回數組首地址,這樣就可以實現返回兩個值的效果。需要注意的是,要返回數組首地運首掘址,那麼返回的值不可以是局部變數,有如下幾種是可以的:

a) 使用靜態局部變數存儲,並返回地址;

b) 使用全局變數存儲,返回地址;

c) 函數中動態分配內存,並返回申請到的地址,此種方法需要注意,在使用後需要釋放;

d) 在參數中傳入數組地址,並返回。即返回的實際上是主調函數中的變數地址。

(5)c語言返回值函數調用擴展閱讀

通常我們希望通過函數調用使主調函數能得到一個確定的值,這就是函數的返回值。函數的返回值是通過函數中的 return 語句獲得的。return 語句將被調函數中的一個確定的值帶回到主調函數中,供主調函數使用。

函數的返回值類型是在定義函數時指定的。return 語句中表達式的類型應與定義函數時指芹氏定的返回值類型一致。如果不一致,則以函數定義時的返回值類型為准,對 return 語句中表達式的類型自動進行轉換,然後再將它返回給主調函數使用。

在調用函數時,如果需要從被調函數返回一個值供主調旁核函數使用,那麼返回值類型必須定義成非 void 型。此時被調函數中必須包含 return 語句,而且 return 後面必須要有返回值,否則就是語法錯誤。

如果函數有返回值,那麼 return 語句後面的括弧可以不要,比如「return(z);」等價於「return z;」。若不需要返回值則可以不要 return 語句。

需要強調的是,一個函數中可以有多個 return 語句,但並不是所有的 return 語句都起作用。執行到哪個 return 語句,就是哪個 return 語句起作用,該 return 語句後的其他語句就都不會執行了。

熱點內容
crm客戶管理系統源碼 發布:2024-11-27 07:59:26 瀏覽:363
匠辰app安卓在哪裡下載 發布:2024-11-27 07:47:12 瀏覽:731
sql表操作 發布:2024-11-27 07:46:31 瀏覽:813
雲頂之腳本 發布:2024-11-27 07:45:37 瀏覽:658
編程箴言pdf 發布:2024-11-27 07:43:59 瀏覽:369
傳奇腳本經驗卷 發布:2024-11-27 07:43:16 瀏覽:679
我的世界手機版國際服怎麼創建自己的伺服器 發布:2024-11-27 07:38:19 瀏覽:693
java中立方 發布:2024-11-27 07:07:05 瀏覽:484
編程Q1 發布:2024-11-27 06:52:29 瀏覽:459
版本編譯驗證 發布:2024-11-27 06:46:43 瀏覽:938