1.下列 C/C++程式片段執行後,z 的值為何?
(A) 25
(B)27
(C) 29
(D) 31

答案:登入後查看
統計: A(62), B(34), C(90), D(28), E(0) #2978893

詳解 (共 2 筆)

#5581008
先說 ( i <<= 1 )...

(共 233 字,隱藏中)
前往觀看
19
0
#5974964

因為int最大值為2^31-1 (32位元組)
然後<<1就是左移一格
例如i的值是
1100100
變為
11001000 (最右邊多一個0)

因此就是單純考int的最大位元組而已
當i=0的時候,就跳出迴圈(因為0=假)
把1100100往左一值移,z就持續+1,直到i在2進位都是0為止

2
0