c語言自定義函數(shù)void能不能返回?cái)?shù)組?
并不是一定不能返回,而是要區(qū)分定義的一維數(shù)組類型。 1 當(dāng)一維數(shù)組為靜態(tài)類型時(shí),即 static type var[N]; 的形式,這時(shí)是可以將數(shù)組名返回的。 2 當(dāng)一維數(shù)組不是靜態(tài)類型,即不存在static修飾時(shí),數(shù)組為局部變量,這時(shí)不能將數(shù)組名返回。 當(dāng)把數(shù)組名返回時(shí),實(shí)際上是返回了數(shù)組的首地址,后續(xù)繼續(xù)使用該地址指向的內(nèi)存。如果數(shù)組為局部變量,那么按照C語言的規(guī)則,該段地址在退出函數(shù)后,會(huì)被釋放,并可能被系統(tǒng)做其它用途,這樣再繼續(xù)訪問該段地址就會(huì)引起不可預(yù)知錯(cuò)誤。所以對于局部數(shù)組名是不可以返回的。 而靜態(tài)局部變量,開辟的空間不會(huì)在退出函數(shù)后釋放,這時(shí)可以返回。
上一篇中文域名的解析步驟?
下一篇怎么查域名有沒有被注冊?