try catch 使用问题

ylecxm 2014-07-30 10:23:02
背景:通过 try catch 捕获输入异常,并提示或处理
情况一:在try声明变量
代码:
            int number;
Console.WriteLine("计算输入数字自加一后的结果");

//用try catch 捕捉输入异常并处理
try
{
number = Convert.ToInt32(Console.ReadLine());
}
catch
{
Console.WriteLine("您输入的数字有误,请重新输入");
}
number += number;
Console.WriteLine("自加一之后的结果:"+number);
Console.ReadLine();

错误:

情况二:在try内声明变量
代码:
            Console.WriteLine("计算输入数字自加一后的结果");

//用try catch 捕捉输入异常并处理
try
{

int number = Convert.ToInt32(Console.ReadLine());
}
catch
{
Console.WriteLine("您输入的数字有误,请重新输入");
}
number += number;
Console.WriteLine("自加一之后的结果:"+number);
Console.ReadLine();

错误:

请问该错误的原因是什么,以及正确用法
...全文
171 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
「已注销」 2014-07-31
  • 打赏
  • 举报
回复
谢谢各位前辈,问题解决且明白原因了
伤逝的离别 2014-07-30
  • 打赏
  • 举报
回复
//用try catch 捕捉输入异常并处理 try { int number; Console.WriteLine("计算输入数字自加一后的结果"); number = Convert.ToInt32(Console.ReadLine()); number += number; Console.WriteLine("自加一之后的结果:"+number); Console.ReadLine(); } catch { Console.WriteLine("您输入的数字有误,请重新输入"); } 把执行的代码放到try里面就行了
by_wind 2014-07-30
  • 打赏
  • 举报
回复
变量声明在括号里面,却要拿到括号外面用,当然报错
---砖家叫兽 2014-07-30
  • 打赏
  • 举报
回复
问题1:局部变量在使用前必须先初始化,全局变量你可以理解成如果你不给它赋值系统会生成一个默认的值。 问题2:变量number的作用域只在try的括号中,你在括号外调用是调用不到的,你可以把number定义成全局变量。 class Program { static void Main(string[] args) { Program p = new Program(); p.Method(); } int number; public void Method() { Console.WriteLine("计算输入数字自加一后的结果"); //用try catch 捕捉输入异常并处理 try { number = Convert.ToInt32(Console.ReadLine()); ++number; Console.WriteLine("自加一之后的结果:" + number); } catch { Console.WriteLine("您输入的数字有误,请重新输入"); Method(); } Console.Read(); } }
埋头苦练 2014-07-30
  • 打赏
  • 举报
回复
情况一:在try外声明变量 修改:int number=0; 情况二:在try内声明变量 这个变量只能在try内使用,要是在外边用,只能拿到外边定义。
  • 打赏
  • 举报
回复
都是正解。其实看错误信息应该去推断大概问题出在哪里,这种问题还是百度,谷歌快一些
exception92 2014-07-30
  • 打赏
  • 举报
回复

 int number;
-》

 int number=0;
gomoku 2014-07-30
  • 打赏
  • 举报
回复
int number = 0; Console.WriteLine("计算输入数字自加一后的结果");

110,534

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧