
“溢出”,是指数值超出类型的范围限制,比如一个Integer型变量,它的范围是-65536到+65535,如果你给他赋值为80000,就袜没会提示“溢出”了。一杯水倒满了还继续倒,那就是“溢出”了。
“下标越界”,是指数组的下标超出了范围,比如一个数组a的声明语句是 Dim a(5),那么它的下标范围就是0到5,如果你用a(6)或者a(-1),那就是“下标越界”了。
“子程序或函数未定义”,就是这几个字所表达的意思。但是对于初学差好茄者来说,很有可能就是把子程序或函数(也有可能是变量名)的名字写错了,这样VB就会认为这是未定义的子程序或函数。
分类: 电脑/网络 >>程序设计 >>其他编程语言问题描述:
想请教一下这个程序为什么编不过?是数组越界了吗?
using System
namespace A6_2
{
class juge
{
static void Main()
{
Console.WriteLine("请输入手机号码!(11位)")
int [] a= new int [10]
for (int b = 0b <= 10b++)
{
a[b] = Console.Read()
}
juge1(a)
}
public static void juge1(params int [] a)
{
if(a.Length != 11)
Console.WriteLine("输入长度错误!")
else if(a[0]!=0&&a[1]!=3)
Console.WriteLine("非中国号码!")
switch (a[2])
{
case 0:
case 1:
Console.WriteLine("联通GSM号仿樱码!")
break
case 2:
Console.WriteLine("联通CDMA号码!")
break
case 3:
case 4:
break
case 5:
case 6:
case 7:
case 8:
case 9:
Console.WriteLine("移动号码!")
break
default:
Console.WriteLine("非嫌昌中国号码!")
break
}
}
}
}
解析备者丛:
int [] a= new int [10]
for (int b = 0b <= 10b++)
错误``11次循环``数组只有10位``
11位的话``改为int [] a= new int [11]
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)