写出诗一样代码的灵丹妙药: const与assert

 

🤩本文作者:大家好,我是paperjie,感谢你阅读本文,欢迎一建三连哦。

🥰内容专栏:这里是《C知识系统分享》专栏,笔者用重金(时间和精力)打造,基础知识一网打尽,希望可以帮到读者们哦。

🥴内容分享:本期会对C语言中的重点知识数组进行具体讲解,各位看官姥爷快搬好小板凳坐好叭。

😘:不要998,只要一件三连,三连买不了吃亏,买不了上当(写作不易,求求了💓)。

前言

在写代码的过程中,想必大家应该会时不时遇到一些自己写出来的bug,它跟幽灵一样时不时吓你一跳,让你触不及防,写的程序也会突然崩溃。在这种时候就得拿出我们的灵丹妙药const和assert来制裁它们了。

什么是const和assert

const是C语言关键字中的一种,const是constant的简写,用来定义常量,它限定一个变量不允许被改变,产生静态作用。const最开始推出的目的是为了取代预编译指令,取长补短。除此之外,const 更强大的地方是修饰函数参数、函数返回值、函数体。被 const 修饰的东西都受到强制保护,可以防止意外改动,提高程序的健壮性。

assert用百度百科的介绍,"在程序设计中,断言是一种放在程序中的一阶逻辑,目的是为了标示与验证程序开发者预期的结果-当程序运行到断言的位置时,对应的断言应该为真。若断言不为真时,程序会中止运行,并给出错误消息。"C语言的断言是通过assert语句来实现的,用于捕获运行时不应该发生的非法情况。如果在执行断言时,对应的断言为真,啥事都没有发生,如果对应的断言为假,编译器就会出现异常。

const与assert的作用

对于函数的入参,不管是什么数据类型,也不管是 指针传递,还是 引用传递,只要加了 const 修饰,就可以防止函数内意外修改该参数,起到保护作用。

const在修饰指针变量的时候,const如果放在*的左边,修饰的是指针指向的内容。保证指针指向的内容不能通过指针改变。但是指针自身的内容可以改变。

const如果在*的右边,修饰的是指针自身的内容。保证指针自身的内容不能通过指针改变。但是指针指向的内容可以改变。

代码举例:

断言的作用就是编码人员在开发期间应该对函数的参数、代码中间执行结果合理地使用断言机制,确保程序的缺陷尽量在测试阶段被发现。

代码案例:

 

  • 41
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 52
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 52
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

paper jie

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值