回覆列表
-
1 # 愛學計算機
-
2 # 程式設計師fearlazy
一般情況下會有兩種可能性。
1.抄錯了,但是這種錯誤肉眼又很難看出來,所以你以為是一樣的。有一些符號是很容易弄錯的。比如說在if後面小括號後加了一個分號。執行結果必然是不一樣的。認真核對一下你的程式碼不要錯過任何一個細節。
2.就是程式設計環境不一樣,你可能用VC也有可能用VS,會導致一些細小的差異。另外編譯器不一樣也會導致一些細小的差異。不過這種情況在初學語言中一般不會遇到。所以目測你遇到的情況屬於第一種。
-----------------------------------------------
C語言有版本的區別,不同的版本或許有一些不同的地方。
例如在,vc++6.0中,基本整型的取值範圍是-2^31到+2^31-1,而在trubo c中,基本整型的取值範圍是-32768到+32767。所以,如果在vc中你寫如下程式:
int a;
a=32767;
a=a+1;
這就沒有問題;
但是在tc中,就會發生溢位,a的值結果就成了-32768。
當然除了這些版本的問題,如果你發現書上的程式,自己輸入執行結果不一致。我覺得還是好好檢查下吧,有可能是你輸錯了也說不定呢。