intmain函數(shù)后一定要加return0嗎?
函數(shù)不返回的情況下無(wú)須寫(xiě)出return語(yǔ)句,例如無(wú)限循環(huán)、調(diào)用不返回的函數(shù)(exit, longjmp之類(lèi))等
函數(shù)返回,返回類(lèi)型不是int的情況下,若返回類(lèi)型是void則沒(méi)有寫(xiě)出return的必要性,可在需要提前返回的情況下寫(xiě)出return來(lái)返回,若返回類(lèi)型是除int和void的其他情況下,使用對(duì)應(yīng)類(lèi)型的表達(dá)式返回
函數(shù)返回int的情況下,若函數(shù)是main函數(shù)時(shí)(也就是題主最可能問(wèn)的一種情況),允許控制流直接通過(guò)執(zhí)行過(guò)函數(shù)體直接離開(kāi),也即不寫(xiě)出return語(yǔ)句來(lái)返回,返回值將隱式為0,若非main函數(shù)且需要返回的情況下,必須寫(xiě)出return語(yǔ)句接返回的表達(dá)式,返回值即寫(xiě)出的表達(dá)式,具體語(yǔ)義根據(jù)函數(shù)的編寫(xiě)者定義,此時(shí)若控制流直接離開(kāi)函數(shù)體則行為未定義(即錯(cuò)誤)