C语言编程十大建议——语法语义篇:使用脚本检查部分语义错误
来源:互联网 发布:网络测试仪怎么看 编辑:程序博客网 时间:2024/06/06 01:58
1.亲核字符串、数组操作之越界与否。不然,很可能出现程序可以编译通过,但是最终却给出了错误的结果。另外指针和数组的越界访问,很容易出发segment fault
2.不要重写标准库函数,把函数名改成你自己才懂得的晦涩的名字,遵循一种统一的编程规范。
3.在书写switch case和定义相同结构的变量的时候,如果为了少手动来写一部分代码,直接采用复制粘贴的形式,那么很有可能你的某个便另定义是错误的(直接copy了钱一个变量的值,而没有做对应的修改)。
4.scanf后面没有加&,switch中漏掉break,=和==的误用
5.使用一些危险的,有可能产生越界的库函数,例如gets等。
6.多加或者少用了分号,while后if后面,会导致逻辑错误。
7.函数的声明最好和定义分离,函数要先声明,后使用
8.循环边界的确定,边界的+1还是-1,从循环中出来以后值是多少,往往是一些关键节点。
当程序的逻辑和你预想的逻辑不符的时候,想想什么地方可能出现问题:其中,4、5、6三点是最容易出现问题的地方;如何避免这类问题浪费掉大量调试时间呢?写一个脚本,每次都检查这几个地方!
给一个sed脚本,可以检测for、while、if后面多加的分号问题:
1 #n 2 /^[\ \t]*if/{ 3 /);/p 4 } 5 6 /^[\ \t]*while/{ 7 /);/p 8 } 9 10 11 /^[\ \t]*for/{ 12 /);/p 13 }
更多的语法正确而语义错误的例子,可以参考:http://blog.csdn.net/ipmux/article/details/17350933
- C语言编程十大建议——语法语义篇:使用脚本检查部分语义错误
- 编程语言的语法与语义
- 编程语言的语法和语义
- 语法和语义错误。
- 语法和语义错误
- 语法和语义错误
- 语法和语义错误!
- 语法和语义错误
- 语法和语义错误
- C语言中的语法错误和语义错误
- 在C语言中什么是语义错误??
- 初学C语言时在语法和语义上容易犯的一些错误
- C陷阱篇之语法正确语义错误的编译器局限
- [面试] C/C++ 语法(四)—— 骤死式语义与 while 判断
- C编译器剖析_4.1 语义检查_语义检查简介
- C编译器剖析_4.2 语义检查_表达式的语义检查(1)
- C编译器剖析_4.2 语义检查_表达式的语义检查(2)_数组索引
- C编译器剖析_4.2 语义检查_表达式的语义检查(4)_函数调用
- Myeclipse配置插件
- 1 2 5组合100,有多少种方法
- Unity里面的自动寻路(二)
- Passbook学习笔记
- Android如何将Activity以Dialog的形式显示
- C语言编程十大建议——语法语义篇:使用脚本检查部分语义错误
- 交互体验之产品的文案
- Class.this 和 this 的有什么不同
- uva 10099 - The Tourist Guide(最小生成树)
- tomcat多域名配置
- 面试之BI-SQL--table转换[2]
- 关于jquery命名的冲突问题
- NSNotification(消息机制)
- 算法竞赛入门经典第二章练习