[語法] bit shift補0

看板C_and_CPP作者 (Xen)時間15年前 (2010/03/21 14:12), 編輯推噓0(002)
留言2則, 2人參與, 最新討論串1/1
一般來說要做bit shift都會使用">>" 但是如果要shift的int是負數 則他左邊會自動補上sign的1而不是0 例如: 11....1111100是負4 如果(-4 >> 1)會變成 11....1111110 假設我想要他是變成 01....1111110 也就是左邊補0 在Java裡面有>>>運算元可以用 請問C++裡面有沒有類似的語法呢? -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.114.212.103

03/21 14:51, , 1F
(unsigned int)-4>>1;
03/21 14:51, 1F

03/21 15:28, , 2F
對耶 原來這麼簡單!
03/21 15:28, 2F
文章代碼(AID): #1BfRZfBr (C_and_CPP)