解析整数时发生溢出异常

时间:2019-04-04 19:07:00

标签: c# overflow

我正在尝试执行“异或”操作。首先,我将两个字符串转换为二进制,然后在第一个字符串的第一个ch的每个字符和第二个字符串的第一个字符上循环,以将它们异或,但是我不断收到“用户代码未处理溢出异常”

r1 = 0; r2 = 0; s1 = ""; s2 = "";
  //lastW    ="10001011100001001110101100000001"

            r1 = int.Parse(lastW); //Here where i get the exception

我也尝试使用

 r1 = Convert.ToInt32(lastW);

但是我遇到了同样的异常

1 个答案:

答案 0 :(得分:0)

您的字符串所包含的数字比以10为底的“十非整数”稍大。这比maximum value of an int32还要大很多。

您可以使用Convert.ToInt32(lastW, 2)从二进制字符串转换(Convert.ToInt32的第二个可选参数接受要转换的基数)。