最近遇到一個怪問題
就是程式 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
arrow
arrow
    全站熱搜

    JohnDX 發表在 痞客邦 留言(0) 人氣()