【发布时间】:2017-06-15 19:02:50
【问题描述】:
大家好 Stackoverflow!
我正在做一个学校项目,目前整个程序都在工作,但我想让它防故障,但如果我只是按 ENTER 而不是输入任何信息,我会遇到数组超出范围的问题在。
string[] strIpAddress = ipAndSubnetArray[0].Split('.');
string[] strSubnetMask = new string[] { "" };
int[] intSubnetMask = new int[] { };
string strCIDR = "";
string cidrSubnetmask = "";
if (ipAndSubnetArray[1].Length > 2)
{
strSubnetMask = ipAndSubnetArray[1].Split('.');
intSubnetMask = strArray2IntArray(strSubnetMask);
}
else if (ipAndSubnetArray[1].Length < 3)
{
strCIDR = Convert.ToString(ipAndSubnetArray[1]);
cidrSubnetmask = cidrTilDeci(Convert.ToInt32(strCIDR));
strSubnetMask = cidrSubnetmask.Split('.');
intSubnetMask = strArray2IntArray(strSubnetMask);
}
else if (ipAndSubnetArray == null)
{
Main();
}
我尝试使用 ipAndSubnetArray == null 进行修复,但这似乎没有奏效。有什么建议么?如果您需要更多代码,请告诉我。
【问题讨论】:
-
首先检查 null 或 0 长度
-
他们说的 ^^
-
你有没有试过调试代码看看为什么会失败?
-
另外,如果这部分代码在“Main”函数上并且有人感到无聊并持有返回键,您将遇到
StackOverflow异常,