我要計算這個數組:tab<<1
與標籤字節C#轉移字節
數組我做的這幾行,但它似乎不起作用。我是我做錯了什麼?
byte[] T = new byte[16];
for (int i = 0; i < 16; i++) T[i] = (byte)(tab[i] << 1);
我要計算這個數組:tab<<1
與標籤字節C#轉移字節
數組我做的這幾行,但它似乎不起作用。我是我做錯了什麼?
byte[] T = new byte[16];
for (int i = 0; i < 16; i++) T[i] = (byte)(tab[i] << 1);
如果你想結轉每個字節的MSB
,你可以做這樣的事情:
var t = new byte[16];
byte carry = 0x0;
for (var i = 15; i >=0 ; i--)
{
var newcarry = (byte) (t[i] & 0x80);
t[i] = (byte) (t[i] << 1 + carry);
carry = newcarry;
}
謝謝!但我有一個問題:var newcarry =(byte)(t [i]&0x80);即:索引超出了數組的範圍。 – user2832642
我輸入了i ++,但它是i--。修復答案... –
是的,我看到它,但即使我寫我 - 錯誤仍然在這裏:s – user2832642
*「但它似乎不起作用」 *。什麼不行?你期望什麼,你會得到什麼? –
第一行是無效的C#代碼。 – Stijn
你究竟想在這裏做什麼?它看起來像要將數組中的每個元素左移一位,這是否正確? –