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 小时前
C语言之指针入门
c语言·开发语言·c语言之指针入门
ada7_1 小时前
LeetCode(python)78.子集
开发语言·数据结构·python·算法·leetcode·职场和发展
nbsaas-boot2 小时前
Go 项目中如何正确升级第三方依赖(Go Modules 实战指南)
开发语言·后端·golang
wadesir2 小时前
C++基本数据类型详解(零基础掌握C++核心数据类型)
java·开发语言·c++
skywalk81633 小时前
wow文件处理trinitycore的文件处理
开发语言·游戏
一路往蓝-Anbo4 小时前
STM32单线串口通讯实战(五):RTOS架构 —— 线程安全与零拷贝设计
c语言·开发语言·stm32·单片机·嵌入式硬件·观察者模式·链表
leiming64 小时前
c++ map容器
开发语言·c++·算法
坚持就完事了4 小时前
JavaScript
开发语言·javascript·ecmascript
多多*4 小时前
2026年1月3日八股记录
java·开发语言·windows·tcp/ip·mybatis
杨校4 小时前
杨校老师课堂备赛C++信奥之模拟算法习题专项训练
开发语言·c++·算法