看板 Python 關於我們 聯絡資訊
請教各位先進, 今假設有一值為 x = 0xd4c3b2a1 我打算做位元組的轉換,因此以四個bytes為一組將其反序排列, 理想的話應該是會變成 0xa1b2c3d4 = 2712847316 我是這樣寫的 x=(x>>24)|((x<<8)&0x00ff0000)|((x>>8)&0x0000ff00)|(x<<24) 但是結果會變成 59887867047101396 即 0xD4C3B2A1B2C3D4 這個結果 會多出前面的 d4c3b2 想請教該如何只顯示 a1b2c3d4 呢? -- ███ ▂▄▃ ││││ ˋ Mooncat~││││ 「為什麼 ◤ ◥▏*_▂ │││ 為什麼教授這麼雞掰 ▌█ 沒天理啊…」 ▅▇*Mooncat~ ˋ█▆◤ _ ▁▄▆▇ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.130.175.128
weijr:前面會多出東西,是因為你沒把該去掉的東西去掉 04/10 13:51
weijr:python 有互動 shell,多多利用吧 04/10 13:53
KyoYang:不好意思,請問這部份該如何去掉?可否說得更詳細一點… 04/10 13:52
KyoYang:我就是用 shell run的 ^^" 04/10 13:54
liangjr:再加一層mask吧 跟你中間幾個一樣 x = x & 0x0ffffffff 04/10 15:29
KyoYang:感謝l大,此法OK! 04/10 16:57