24.try块怎么用 C#例子

这是一个用英语写的try-catch例子

简单来说就是一个try,try里面的代码可能会出错,然后有两个catch,规定了具体的错误是什么

如果发生相应的错误,就会把错误信息存到err里,err.Message是一个字符串格式的提示信息,可以打印出来。

最后用catch(Exception),可以捕捉大部分错误。

finally部分是无论代码出错与否都会执行的

简单来说就是我的代码在try里面出的错,可以被catch捕捉到,然后跳转到catch的代码位置继续执行。

cs 复制代码
using System;

class Program
{
    static void Main()
    {
        Console.WriteLine("请输入一个数字:");
        string userinput=Console.ReadLine();

        try
        {
            int num = Convert.ToInt32(userinput);
            Console.WriteLine("input is " + num);
        }
        catch(FormatException err)
        {
            Console.WriteLine(err.Message);
        }
        catch (OverflowException err)
        {
            Console.WriteLine(err.Message);
        }
        catch(Exception err)
        {
            Console.WriteLine(err.Message);
        }
        finally
        {
            Console.WriteLine("Finish");
        }
    }
}

输出结果:

cs 复制代码
请输入一个数字:
jjgjg
The input string 'jjgjg' was not in a correct format.
Finish
相关推荐
神仙别闹1 小时前
基于Python实现英词语自动对齐系统
开发语言·python
akinggw1 小时前
libagentcore - 一个基于c++的AI多agent系统升级到2.0版本
开发语言·jvm·c++
老歌老听老掉牙2 小时前
圆柱端面四平面交线及其在yoz面投影的几何解析与 Python 实现
开发语言·python·平面
旖旎夜光2 小时前
【C++ 基础入门】命名空间、输入输出、缺省参数与函数重载
开发语言·c++·笔记·学习
俩个逗号。。2 小时前
Kotlin flow 详解
android·开发语言·kotlin
淡海水3 小时前
10-01-互操作-C#与C++边界的内存管理
unity·c#·游戏引擎·.netcore·gc
程序猿乐锅3 小时前
万字详解Single-flight(单飞模式)
java·开发语言·分布式·后端·学习·single-flight
揽星河..5 小时前
【C语言】指针
c语言·开发语言
小小数媒成员5 小时前
UGUI原理(一)
开发语言·游戏·unity·游戏引擎
WarPigs5 小时前
C#把byte[]以十六进制打印,带分割符
c#