1、首先,這段代碼是先執(zhí)行了輸出99在屏幕上,然后在退出之前才返回的0。而不是正常退出了之后系統(tǒng)才去處理輸出。其次,返回多少是程序員自己控制的,你喜歡將你上面代碼的return 0改成return -1,程序就返回-1出去。
成都地區(qū)優(yōu)秀IDC服務器托管提供商(創(chuàng)新互聯(lián)).為客戶提供專業(yè)的服務器托管德陽,四川各地服務器托管,服務器托管德陽、多線服務器托管.托管咨詢專線:13518219792
2、過main()函數(shù)由系統(tǒng)調用,它的返回值也就由系統(tǒng)使用。
3、C語言中系統(tǒng)只對全局變量自動設定初值0,局部變量中如果沒有指定為靜態(tài)存儲類型static,變量的初值就是隨機的。所以在程序中,一般局部變量在應用前都必須設定初值。
4、因為變量是可以變動的,定義一個變量不初始化時,變量會是一個隨機數(shù),進行計算了的時候,就會引用那個隨機數(shù)進行計算,會有誤差。
m變0,因為你有m=&a, 循環(huán)結束后a==NULL, 所以*m==a==NULL;其它還有一些地方需要改的:void insert(node *h,int i,int x) //依次輸入指向頭結點的指針,要插入的位置,插入的值。
數(shù)組a[3]里的元素只有a[0]、a[1]和a[2],a[3]里的3代表的是數(shù)組的元素個數(shù)。
其實這種現(xiàn)象在C語言中是有定義的。值為0的整形常數(shù)表達式或強制轉換為void *類型的表達式可通過強制類型轉換、賦值或比較操作轉換為任意類型的指針。其結果將產(chǎn)生一個空指針。
現(xiàn)在的系統(tǒng)都是運行在保護模式下,每一個程序都有自己的內存空間。你用程序看到的其實是你這個程序內存空間的0地址處,而不同的程序應該是不同的。我只是這么覺得的。
1、return 0是該程序正常退出的意思,該數(shù)組中從第一個數(shù)起依次與下一個比較,保留較大數(shù)繼續(xù)比較,直到比較完畢。應為定義的是“int main”,如果是“void main”就可以不用寫返回值了。
2、在C語言中,默認返回0的時候表示成功,其它表示失敗,在標準C函數(shù)庫中,如果返回值不為0表示失敗,且返回值對應一個errno,每個errno對應了一種錯誤解釋。
3、如果是 int main,那么需要 return 一個值。這個值一般是 0,表示沒有出現(xiàn)異常情況正常返回。當然也可以 return -1 或者其他值,返回非零值表示主函數(shù)執(zhí)行過程中的異常情況。