我需要轉換到VB.NET下面的函數,但我不知道如何處理的聲明轉換C#功能,VB,char值溢出錯誤
res = (uint)((h * 0x21) + c);
功能齊全:
private static uint convert(string input)
{
uint res = 0;
foreach (int c in input)
res = (uint)((res * 0x21) + c);
return res;
}
我創建了以下,但我得到一個溢出錯誤:
Private Shared Function convert(ByVal input As String) As UInteger
Dim res As UInteger = 0
For Each c In input
res = CUInt((res * &H21) + Asc(c)) ' also tried AscW
Next
Return res
End Function
我缺少什麼?有人可以解釋細節嗎?
什麼投入失敗?你確定你沒有通過一個對於UInt32來說太大的輸入嗎? – 2012-07-18 11:28:17
我認爲字符串正在導致它流過'uint'限制 – V4Vendetta 2012-07-18 11:30:41