return一個(gè)數(shù)組 C語言中,return語句怎么樣返回一個(gè)數(shù)組?
C語言中,return語句怎么樣返回一個(gè)數(shù)組?首先,C/C只能返回指向數(shù)組的指針,而不能返回整個(gè)數(shù)組。即使返回指向數(shù)組的指針,如果函數(shù)中的數(shù)組是自動(dòng)的,也是很危險(xiǎn)的。這是一個(gè)更真實(shí)的說法。如果您真的需
C語言中,return語句怎么樣返回一個(gè)數(shù)組?
首先,C/C只能返回指向數(shù)組的指針,而不能返回整個(gè)數(shù)組。即使返回指向數(shù)組的指針,如果函數(shù)中的數(shù)組是自動(dòng)的,也是很危險(xiǎn)的。這是一個(gè)更真實(shí)的說法。如果您真的需要從函數(shù)返回自動(dòng)數(shù)組的所有元素值,有什么方法嗎?對(duì)。因?yàn)镃/C允許返回結(jié)構(gòu),所以可以定義一個(gè)結(jié)構(gòu)模板,將數(shù)組作為成員排列,在函數(shù)中臨時(shí)聲明結(jié)構(gòu)變量,并對(duì)數(shù)組進(jìn)行操作;之后,您可以返回結(jié)構(gòu)變量,并在主調(diào)用函數(shù)中接收相同類型的結(jié)構(gòu)變量,間接實(shí)現(xiàn)“返回?cái)?shù)組”。例如,代碼如下:運(yùn)行結(jié)果如下:
怎么在函數(shù)里return一個(gè)數(shù)組?
當(dāng)數(shù)組用作函數(shù)返回值或函數(shù)參數(shù)時(shí),它實(shí)際上只作為指針返回或傳遞。所以返回值是指針數(shù)據(jù)類型。例如,下面的代碼:
int*RetnuuArray()//返回值是指針類型。
{
返回一個(gè)狀態(tài)或結(jié)果。如何判斷子功能是否成功?例如,int sum(int i,int y){if(i>y)return 0else return 1}可以從返回值中知道,返回0表示i不大于y;如果成功,為什么不直接在子函數(shù)中輸出success;如果失敗,為什么不直接在子函數(shù)中輸出failure?你還在干什么?通常,一個(gè)程序中有多個(gè)子函數(shù)。某些子功能只能在子功能成功后一步操作。然后,子函數(shù)是否應(yīng)該運(yùn)行取決于返回值。假設(shè)還有另一個(gè)子函數(shù)作為array;call:if(sum(6,7)==1)array(…,…)//只有子函數(shù)滿足一個(gè)條件,array子函數(shù)才能執(zhí)行。。。。main中的返回值用于告訴系統(tǒng)“I”結(jié)束。。