1
A
回答
5
您正在要求調試器爲您評估表達式。它現在就像一個編譯器,將您輸入的表達式轉換爲代碼並運行該代碼以顯示結果。它認爲0xff000000
是類型的文字,這是一個公平的呼叫,因爲int不能存儲該值,它大於Int32.MaxValue。因此,評估>>運營商長參數,i
值轉換爲長第一。結果當然也是長。
。因爲沒有以其它方式轉換爲較小的類型,像您在代碼那樣,調試器顯示結果與64位,16位十六進制數字長(當切換到十六進制輸出)。
其他表達式的行爲不如此,其中使用的文字小於Int32.MaxValue,因此使用int參數進行評估,產生32位結果,8位十六進制數字。
值得注意的或許是調試器的表達式求值接近,但不等同於C#編譯器的評估。這裏不是問題,但在某些情況下可能很重要。 Roslyn項目終於出貨時,這可能會有所改變。
+0
謝謝,像往常一樣的詳細答案:D – Aybe
相關問題
- 1. Visual Studio調試器 - 以十六進制顯示整數值
- 2. 爲什麼我的linq結果在調試器中顯示十六進制值?
- 3. Visual Studio C++調試器:沒有十六進制轉儲?
- 4. 「Android Studio」調試 - 以十六進制顯示變量
- 5. 爲什麼Visual Studio會自動將數字值轉換爲十六進制值?
- 6. 值顯示爲十六進制
- 7. VS 2008調試器以十六進制顯示整數
- 8. 在Visual Studio中切換十六進制顯示的快捷方式是什麼?
- 9. 十六進制NSString爲int值
- 10. 什麼是無符號的值長長以十六進制
- 11. 顯示十六進制數
- 12. 試圖瞭解以int形式表示十六進制值
- 13. 的SharePoint Visual Studio的構建 - 錯誤:「」,十六進制值爲0x00
- 14. 我的Visual Studio將所有整數,長變量值作爲十六進制
- 15. 在Visual C++中將十進制值轉換爲十六進制
- 16. O_APPEND的十六進制值是什麼?
- 17. asp.net int?當調試被轉換爲十六進制問題時
- 18. phpMyAdmin的顯示allthough「顯示十六進制」十六進制varbinary列是選中
- 19. 什麼是十六進制?
- 20. 存儲長十六進制值
- 21. C - 顯示字符爲十六進制
- 22. 十六進制表示爲char十六進制的文本
- 23. Visual Basic中的十六進制值
- 24. 什麼是十六進制編輯器?
- 25. 價值爲十六進制
- 26. 爲什麼使用十六進制?
- 27. 爲什麼HTML十進制和HTML十六進制?
- 28. INT爲十六進制字符串(C++)
- 29. 十六進制爲int在Java
- 30. android int轉換爲十六進制
這是C#嗎?你應該添加一個語言標籤。 –
是的,完成,謝謝:D – Aybe