C语言CHECKLIST.doc_第1页
C语言CHECKLIST.doc_第2页
C语言CHECKLIST.doc_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

C语言CHECKLIST一、C语言初学者常犯错误:1“=”误写成“=”2case后忘了加break3scanf中忘了&4. for后想用复合语句却忘了加”5. #开头的预编译指令后误加了”;”6. 符号用了中文输入法7. i+与+i混淆8.实现swap()函数时没有使用指针作为参数9. 忘了数组的合法下标范围是0,N-110. 用字符数组存放字符串时忘了为0留位置11. malloc()后忘了free()12. fopen()后忘了fclose()13. #include自己的文件时应该用”XXX.h”而不是14. 使用绘图函数时忘了在TC中选中Options-Linker-Libraries-Graphic Library15. 误认为sizeof(int)永远等于216. 3/2等于1而不是1.517.混淆&和&,混淆单引号和双引号18. 忘了写函数的返回类型.没有返回类型时要写void,如果不写会默认返回int(对于老编译器)19. 误将局部变量的地址针返回20. 对文件开发时,将.c与.cpp文件混用(会引发LNK ERROR)21. 结构体定义的”后忘了加”;”22. 结构体名前忘了加struct(对于老编译器)23. 混淆”.”与”-”24. 递归无法终止(引发Stack Overflow)25while的退出条件写倒了26. 在while循环中忘了让某个东西+,导致死循环. while循环前忘了给循环变量赋初值27. 指针被释放后又继续使用;或某一地址被其他的指针释放了,后来又试图访问那块地址28. 同一个地址被free()两次29. 文件名路径中忘了用”替代”30. 变量忘了赋初值二. 若干建议/提醒1. 给float型变量赋值别忘了在数字后加f,如 float num=5.0f , 输入输出double型变量时用%lf而不是%d2. 注意缩进,最好用Tab键缩进而非空格键3. 变量和函数的名字要有意义,长度平均为810,最忌使用x,xx,a之类的名字4. 大括号先成对写出,再往里面追加内容5. 合理使用空行6. 注释写在一行的后面或上面,不要写在下面. 更新代码时别忘了更新注释7. 直接make或build, 不需要先compile再link8. 调试时加倍注意边界情况9. 为了减少手动输入的痛苦,调试时合理使用文件输入10. TC中单步运行为F8, Trace into为F7; VC中单步运行为F10, Trace into为F1111. 合理使用断点(breakpoint)和监视(watch)12. VC中想要查看运行结果,可以在程序最后加上一个或两个getchar()13. 不用的语句先注释掉,而不是删掉14. 变量和函数名中合理使用大小写15. 对数组初始化为0的工作,试试memset()函数16. 运行时出现含有”access violation”字样的错误提示框,多半是指针错误或数组越界17. 指针声明时和释放后马上赋值为0, 使用前尽量先检查它是否为018. for循环的头部内部要做其他事情19. 浮点数永远存在误差!不要判断一个浮点数是否为0,取而代之的是判断它是否在0左右; 1.0/10.0并不等于0.1(可能是0.0999999999)20. getchar()可能会把上一次的回车读入21. 当文件读取完后,再试图读了一次,feof()才会返回真22. 少用全局变量,尽量用参数传递信息23. 指针也可以用” ”,与数组相同24. 合理使用条件表达式的”短路”功能,如 if(p!=0&*p=a).25. 定义char *p=”;后不

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论