16進制數轉換成10進制整數的VC++程序
二進制數據很少直接用在Visual C++++程序中,因為C++通常被視作高級語言。然而,對于要在兩類不同設備間傳輸信息的通信網絡而言,二進制數或十六進制數的傳輸過程比十進制數更為簡單。
本文引用地址:http://www.104case.com/article/151042.htm在某些應用場合,計算機用戶接口會引導用戶通過鍵盤輸入十六進制數。但因為這個十六進制數要被送至嵌入式系統,所以離開PC之前它必須被轉換成真正意義上的數。此時,用戶輸入的是十六進制形式的字符串。然而,Visual C++ 6.0不提供將十六進制字符串轉換成真正意義的(用0、1表示)十六進制或二進制數的轉換函數。
圖中給出了可實現這種函數的程序的流程圖。首先,需將輸入的十六進制數轉換成二進制數。因為一個十六進制字符代表4位二進制數,所以最好采用 switch case 結構將單個的十六進制字符轉換 4位二進制數。函數convert_hex2bin() 可完成這一轉換。
在將整個十六進制字符串轉換成二進制數后,接下來必須將每4位二進制數轉換成相應的十進制值。函數 convert_sbin2int()返回它的整數值 。這樣,通過帶有VC++ IDE的子函數subfunction atoi(),二進制字符串已被轉換成十進制數。最后,將所有小的整數相加得到最終結果。這一結果可被送至嵌入式系統或者以十進制形式顯示在屏幕上。
![]() |
c++相關文章:c++教程
評論