按位与,按位左移溢出问题

img
while怎么停止循环?flag一直左移,flag怎样会溢出停止循环了?

左移等于*2,flag永远不会小于等于0,直到溢出。
这里选择把num做右移更稳妥。

左移的次数是sizeof(num)*8-1次,num的字节数*8位。