最近遇到一個怪問題
就是程式 Debug mode 跟 Release mode 的執行結果居然不同???
明明就是同一個程式真是太奇怪了...
後來才發現是 abs() 這個 function 引發的問題
在 C 的 stdlib.h 中提供的 abs() function 只有支援 int 跟 long 這兩種型態
不巧的是程式裡面在裡面傳了 double 進去
想也知道這會因為轉型而使資料不正確
但是 Release mode 卻跑得很正常...
解決這個問題就 include math.h 增加 abs() function 支援的型態就好了
Visual Studio Debug vs Release
就是程式 Debug mode 跟 Release mode 的執行結果居然不同???
明明就是同一個程式真是太奇怪了...
後來才發現是 abs() 這個 function 引發的問題
在 C 的 stdlib.h 中提供的 abs() function 只有支援 int 跟 long 這兩種型態
不巧的是程式裡面在裡面傳了 double 進去
想也知道這會因為轉型而使資料不正確
但是 Release mode 卻跑得很正常...
解決這個問題就 include math.h 增加 abs() function 支援的型態就好了
Visual Studio Debug vs Release
debug vs release
全站熱搜