2014-06-23 85 views

回答

2

您的意思是:

blockAverage >>= blockSize; 

您的代碼不會改變blockAverage;您只需計算blockAverage的值,然後將結果向右移blockSize位。

必須使用分配給變化一個變量的值(上面是,當然,對於短即blockAverage = blockAverage >> blockSize;它清楚地一個新值分配給blockAverage)。

+0

修改blockAverage這是一個目標C的事情嗎?當我使用微控制器時,我不記得x >> y是一個問題。 –

+0

@JohnMoffitt你的回憶必定有點陰暗。你意識到'''ist就像任何其他二元運算符一樣;你會期望'int a = 3,b = 4; a + b;'使a'等於7? – unwind

+0

沒有。謝謝你糾正我的記憶。 –

1

>>是按位右移運算符。您需要分配表達式blockAverage >> blockSize;的值。您可以通過

blockAverage = blockAverage >> blockSize; 

blockAverage >>= blockSize; 
相關問題