// 定义一个 DivideError 结构
type DivideError struct {dividee intdivider int
}
// 实现 `error` 接口
func (de *DivideError) Error() string {strFormat := `Cannot proceed, the divider is zero.dividee: %ddivider: 0`return fmt.Sprintf(strFormat, de.dividee)
}
// 定义 `int` 类型除法运算的函数
func Divide(varDividee int, varDivider int) (result int, errorMsg string) {if varDivider == 0 {dData := DivideError{dividee: varDividee,divider: varDivider,}errorMsg = dData.Error()return} return varDividee / varDivider, ""
}
func main() {// 正常情况if result, errorMsg := Divide(100, 10); errorMsg == "" {fmt.Println("100/10 = ", result)}// 当被除数为零的时候会返回错误信息if _, errorMsg := Divide(100, 0); errorMsg != "" {fmt.Println("errorMsg is: ", errorMsg)}}执行以上程序,输出结果为:
100/10 =  10
errorMsg is:  Cannot proceed, the divider is zero.dividee: 100divider: 0

  

转载于:https://www.cnblogs.com/skzxc/p/11252774.html

Go语言学习笔记(10)——错误处理示例相关推荐

  1. C语言学习笔记09-数组、字符数组、字符串数组、二维数组(单字符输入输出putchar、getchar,字符串输入输出的scanf、gets、puts)

    C语言数组   数组作用:可以用来保存很多记录(可以看成一种大容器).一些简单游戏也基本由数组实现,如游戏地图(二维数组)等等.   一个数组 划分 多个单元(下标区分) -存放-> 多个同类元 ...

  2. C语言学习笔记-P1 初识C语言(2)

    C语言学习笔记-P1 初识C语言(2) C语言学习笔记-P1 初识C语言(2) 一.常量 1.字面常量 2.const修饰的常变量 3.#define定义的标识符常量 3.枚举常量 二.字符串+转义字 ...

  3. R语言学习笔记(1~3)

    R语言学习笔记(1~3) 一.R语言介绍 x <- rnorm(5) 创建了一个名为x的向量对象,它包含5个来自标准正态分布的随机偏差. 1.1 注释 由符号#开头. #函数c()以向量的形式输 ...

  4. 【Go语言 · 学习笔记】

    文章目录 Go语言 · 学习笔记 一.Go包管理 1. 什么是Go语言中的包 2. 包的命名 3. main包 4. 导入包 5. 远程包导入 6. 命名导入 7. 包的init函数 二.Go开发工具 ...

  5. (一)Go语言学习笔记

    Go语言学习笔记 1 前言 2 写Go语言需要注意的地方 2.1 Go语言编译执行和直接run的区别 2.2 Go语言的特点 2.3 Linux下配置Go环境变量 2.4 随记 3 go_code 3 ...

  6. R语言学习笔记——入门篇:第三章-图形初阶

    R语言 R语言学习笔记--入门篇:第三章-图形初阶 文章目录 R语言 一.使用图形 1.1.基础绘图函数:plot( ) 1.2.图形控制函数:dev( ) 补充--直方图函数:hist( ) 补充- ...

  7. 易语言学习笔记(2)

    易语言学习笔记(2) 1 数据类型 1.1 基本数据类型 1.1.1 数值型 1.2 特殊数据类型 1.3 数据类型长度 1.4 各数据类型初始值 1.5 数据类型间转换命令 2 易语言的命令 2.1 ...

  8. SpringMVC:学习笔记(10)——整合Ckeditor且实现图片上传

    SpringMVC:学习笔记(10)--整合Ckeditor且实现图片上传 配置CKEDITOR 精简文件 解压之后可以看到ckeditor/lang下面有很多语言的js,如果不需要那么多种语言的,可 ...

  9. c语言中void arrout,c语言学习笔记(数组、函数

    <c语言学习笔记(数组.函数>由会员分享,可在线阅读,更多相关<c语言学习笔记(数组.函数(53页珍藏版)>请在人人文库网上搜索. 1.数组2010-3-29 22:40一维数 ...

最新文章

  1. 百度地图 app 点击事件无效、不触发 解决方案
  2. html如何添加关闭按钮,大神你好,请问怎么在以下代码的div中添加一个关闭按钮?...
  3. 我们曾探讨过的微信功能
  4. Linux DHCP原理与配置
  5. 面向对象--内部属性类型
  6. Apache配置HTTPS功能
  7. javacv 写mp4_JavaCV实现获取视频每帧并保存
  8. 爬虫 404 try_和我一起学爬虫
  9. python编写ATM类_Python中编写类的各种技巧和方法
  10. 【OS】Process Thread
  11. python 导入离线地图_PyQGIS开发 -- 离线地图
  12. 全屏网页时钟屏保flipclock-beautify,简约风格,电脑手机均支持访问
  13. 郭盛华技术有多牛?外媒:稳坐亚洲第一
  14. 交互设计理论之格式塔理论与四大法则
  15. 如何修改Tomcat的默认主页
  16. js编程中常用术语-中英对照
  17. 贪吃蛇小游戏编写心得
  18. 阿里云服务器ECS搭建后台(Windows Server 2012R2)
  19. LINUX下磁盘管理的基本流程与相关操作命令
  20. 共探人工智能新发展,AICON 2022即将重磅开启

热门文章

  1. 传感器系列之4.4超声测距传感器
  2. idea新建文件Hello
  3. DeFi再聚焦,解码预言机风暴,9位大咖倾情分享,算力智库私享会·深圳站结束
  4. 超声波测距 c语言,超声波测距C语言源程序代码
  5. 计算机视听觉机理和方法,【看点】 “视听觉信息的认知计算”重大研究计划 迎接人工智能新时代...
  6. 2020-11-22 使用luacheck检查Lua代码
  7. UVA220 黑白棋 Othello
  8. 网站渗透测试公司总结心得
  9. 如何用4行 C 代码实现一个跨平台的命令行 mp3 播放器
  10. 心脏和字节只有一个跳动,生命和工资只能拼一个多多,躺平的韭菜割不到,但只有「突破提升」才能避开“内卷化”!