代码阅读----基本编程元素

1、strcmp函数了解

使用strcmp函数来比较两个字符串的相等性,返回值并比乐观,如字符串相等时返回0,既C语言中

的false,由于这个原因,可以定义STREQ宏,以便在字符串相等时返回true,该宏如下

#define STREQ(a,b) (*(a)==*(b))&&strcmp((a),(b)) == 0)


2 、switch 语句

如果特定的case或default标记末尾没有转移控制之switch块外的语句(比如break、return、continue),

那么程序将会继续执行下一标记后的语句。在分析代码是,要小心这样的错误。但是在特殊情况下,可能

真的希望这种事情发生。为了向维护者提醒这中情况,一般用一条注释对其标记,如FALLTHROUGH,如

下例:

case 'a'
         num +=31;
    /* FALLTHROUTH(落空、失败)  */
case 'A'
         num += 31;


另外一条缺少default标记的switch语句会悄然忽略意外的数值,即使switch处理一系列的数值,也要包含

default标记,这是一个良好的保护性编程实践。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值