編寫代碼時編譯正確運行錯誤
這當然原因非常多,比如:編譯器編譯不夠嚴格、程序有很大的風險等等,最簡單的一個例子如下:
inta;
scanf("%d",a);
可以確定的一點是:一旦在運行中出現錯誤,大多是較為嚴重的錯誤,須引起重視,否則,一旦錯誤非常嚴重,必會導致許多嚴重的後果,如死機、卡屏甚至直接導致藍屏。
② 我是個c語言初學者,在練寫程序時,程序正確,運行時卻檢測到錯誤這個--------------------
上面提示的不是錯誤。0 error(s), 0 warning(s)就已經說明了。
不過有必要多說幾句
程序的錯誤分為:編譯錯誤,鏈接錯誤,運行錯誤,邏輯錯誤
編譯錯誤一般是不符合語法規則的錯誤
鏈接錯誤一般是編譯器在鏈接這一步時發生的錯誤,比如找不到某個庫
前兩個錯誤一般都可以由編譯器發現
運行錯誤,一般是程序運行時才碰到的,比如:空指針異常,除0操作,數組下標越界等。這些錯誤編譯器是發現不了的,只有在運行時才能發現
邏輯錯誤,就是一切都符合語法,運行也不錯,但是不符合你想要達到的邏輯。
③ c語言編譯正確為什麼老是執行錯誤 編寫是沒問題的。求大神解決啊
編譯正確只說明沒有語法錯誤。邏輯錯誤、演算法上的錯誤編譯程序是檢查不出來的!
④ 為什麼我寫的C語言程序編譯時沒錯,運行時有錯誤
建議你下斷點,然後反復調試運行,肯定能找出問題所在。
我一遇到次類問題,都是這樣解決的。
⑤ 編譯正確,但運行是錯誤的
估計你是package了
package之後可以編譯,但是編譯後的class文件在包下,不再當前路徑下。
所以你用cmd運行的時候要在前面加包名
⑥ 為什麼編譯沒有錯誤,運行卻有錯誤
編譯沒有錯誤是因為你的程序語法沒有錯誤.
而運行時則有可能出現邏輯錯誤.
比如說C#里最常見的"未將對象引用設置到對象的實例",就是說一個對象並沒有實力化,或者沒有值就去引用了.
再比如連接資料庫,語法正確,但是運行時卻因為SQL未啟動或者連接字元串拼寫錯誤而發生異常.
⑦ 程序編譯時沒錯運行時有錯是怎麼回事
程序編譯沒有錯誤,只是表明語法檢查沒有問題了,但是程序的邏輯是否合理、運行是否正確,則不一定。很多情況都會導致這樣的問題,比方說數組越界,訪問非法指針等,你沒有給出源代碼,也沒有提供相關錯誤信息,所以到底是什麼原因,在這里也不好確定。如果程序不長的話,建議對程序進行調試,監測程序的運行狀態,這樣容易找出問題。