1. 程式人生 > >VS出現異常?!和十進位制轉二進位制比是小事

VS出現異常?!和十進位制轉二進位制比是小事

今天被VS的糾錯機制下了一小跳。

使用VS時,如果程式碼出現異常,比如我,執行程式碼時,出現了無限迴圈,在除錯的時候VS會自動停止執行,並在錯誤程式碼行斷點提示。

之後會出現一個雜項檔案,提示你這裡錯了。注意這個雜項檔案是不可修改的。

讓我頭疼的是,不管我怎麼改原始碼,即使改對了,重新除錯的時候還是不能成功執行,還是會彈出原來的雜項檔案和異常提示。

怎麼回事呢?

經過我的一番研究嘗試,發現,竟是之前的執行程式沒有關閉。

是的,就是這個小問題,把我折騰死。而且不是第一次。

之前使用Dev也一樣。我打了一行程式碼,發現怎麼除錯都會報錯,我還看不懂報錯資訊。

最後當然是因為之前的除錯程式沒有關閉。

所以這一小點還是要注意的呀。

當然,除了這點,今天大部分時間都被進位制轉換的遞迴函式給消磨了。

一開始用錯了方法,用短除法算出一個餘數並馬上輸出。雖然可以得到每個數,但是不能逆序啊....

就在我差一點準備用陣列的時候,我突然發現了全域性變數的好東西,於是就每算出一個數就乘10的倍數,每次遞迴的時候就讓倍數增加,這樣就實現了逆序輸出。

 

但是呢,後來發現遞迴的特性,即如果把遞迴放在函式體開頭部分,可以先遞迴到最後再執行,於是就有了很簡單的方法。

具體程式碼被我放到了github上:https://github.com/BlackDn/Cpp/blob/master/trans%20D%20to%20B

有點小累...至於函式名和變數名不要重複的問題,注意一下就好。明白所定義的東西的作用域就行。