Re: [問題] 請問16進位轉十進位,值不要真的轉過去

看板C_and_CPP作者 (神武信魔)時間11年前 (2014/07/15 14:23), 11年前編輯推噓3(304)
留言7則, 6人參與, 最新討論串2/2 (看更多)
※ 引述《liptonbin (我還存在耶)》之銘言: : 請教一下 : 我有個變數是16進位的 : 例如 : DWORD var = 0x10; : 我想把他變成10進位,但不要按造16進位轉10進位轉過去 即變成0x10=>16 : 而是想變成10 : 即var = 10 : 或 : DWORD var = 0x24;(十六進位) : 變成var = 24(十進位) : 請問有什麼好方法嗎 : 謝謝 看到這一個忍不住回一下 char var[2]; var[0]= var & 0x0f; var[1]= var >>4; 打完收工~~ -- 在臺灣,何謂R&D工程師? 1.Reverse and Decap :IC反向工程,去膠,打開封裝,拍照,複製電路佈局。 2.Resign and Die :沒死的就操到辭職,沒辭職的就操到死。 3.Rework and Debug :計畫永遠跟不上變化,變化永遠跟不上老闆的一句話! 4.Relax and Delay :太過於輕鬆(Relax),那麼就要有schedule delay的準備! 但是外派到大陸的臺灣郎,晚上是R (鴨)陪客戶,白天是D (豬)任人宰割! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 115.82.184.179 ※ 文章網址: http://www.ptt.cc/bbs/C_and_CPP/M.1405405384.A.B80.html

07/15 20:02, , 1F
看不懂...
07/15 20:02, 1F

07/15 20:17, , 2F
應該還要 + 0x30 吧?
07/15 20:17, 2F
+0x30,只能用在0~9喔. A~F要另外處理.

07/15 22:29, , 3F
Dec = (( var/16 ) << 4 ) + ( var % 16);
07/15 22:29, 3F

07/15 23:49, , 4F
樓上我看的懂 就是除16後商數和餘數的關係 但原PO的我不懂
07/15 23:49, 4F

07/15 23:54, , 5F
& 0xf 和 % 16 對等, >> 4 等同於 / 16
07/15 23:54, 5F
就是這一個意思. ※ 編輯: kingzero (115.82.184.179), 07/16/2014 11:23:03

07/16 23:41, , 6F
Var[0]個位 Var[1]十位
07/16 23:41, 6F

07/17 00:13, , 7F
不過這例用 char Var[2] 還蠻不準的.0x10 只有用到 Var[0]
07/17 00:13, 7F
文章代碼(AID): #1JnCZ8k0 (C_and_CPP)
文章代碼(AID): #1JnCZ8k0 (C_and_CPP)