元組作為返回值

元組作為返回值

嚴格地說,一個函數(shù)只能返回一個值,但是如果這個返回值是元組,其效果等同于返回 多個值。例如,你想對兩個整數(shù)做除法,計算出商和余數(shù),依次計算出 x/y和 x%y是很低 效的。

同時計算出這兩個值更好。

內(nèi)建函數(shù)divmod接受兩個參數(shù),返回包含兩個值的元組 — 商和余數(shù)。

Swift 元組(Tuple)

元組類型,用于在單個復合值中對多個值進行分組 元組中的值可以是任何類型,并且不需要是相同類型 聲明: 元組聲明的 語法 方式1: 最簡單的元組,就是在圓括號中,用逗號分隔的一組值 是一個具有兩個值的元組,一個元素是整數(shù)類型,另一個元素是字符串類型(這百科是一個合法的數(shù)據(jù)) 方式2 :可以在聲明時命名元組的變量,也可以使用它們的名稱來調(diào)用 數(shù)組和字典組合 取值 方式1:使用下標 方式2:使用元素名稱 方式3:拆分成常量/變量 應用: 1、作為函數(shù)參數(shù) 2、作為函數(shù)返回值 總結(jié): 元組 優(yōu)點: 1、元組可以同時存儲多種類型元素,且元素類型固定,以保數(shù)據(jù)安全,除非你定義數(shù)據(jù)類型為Any。

C語言自定函數(shù)內(nèi)定義一維數(shù)組,為什么不能將數(shù)組名作為返回值?

并不是一定不能返回,而是要區(qū)分定義的一維數(shù)組類型。1當一維數(shù)組為靜態(tài)類型時,即statictypevar[N];的形式,這時是可以將數(shù)組名返回的。

2當一維數(shù)組不是靜態(tài)類型,即不存在static修飾時,數(shù)組為局部變量,這時不能將數(shù)組名返回。

當把數(shù)組名返回時,實際上是返回了數(shù)組的首地址,后續(xù)繼續(xù)使用該地址指向的內(nèi)存。如果數(shù)組為局部變量,那么按照C語言的規(guī)則,該段地址在退出函數(shù)后,會被釋放,并可能被系統(tǒng)做其它用途,這樣再繼續(xù)訪問該段地址就會引起不可預知錯誤。所以對于局部數(shù)組名是不可以返回的。而靜態(tài)局部變量,開辟的空間不會在退出函數(shù)后釋放,這時可以返回。