1-C程序设计-总结.ppt
《1-C程序设计-总结.ppt》由会员分享,可在线阅读,更多相关《1-C程序设计-总结.ppt(29页珍藏版)》请在三一文库上搜索。
1、C语言程序设计 总结,代码风格,代码风格就是程序员的书法 比书法好学得多,基本不需要特别练习 但是坏习惯一旦养成,就像书法一样难以改变 是最易获得和实践的软件工程规则 对设计程序结构、培养团队精神都大有帮助,代码风格,标识符命名 宏全部大写 Windows风格和Unix风格 VariableName variable_name 缩进 “”位置的两种风格 用4格tab还是用空格,空格 增强单行清晰度 每行代码长不要超过80 空行 自然段,表达式尽量简单,下面程序在不同编译器可能产生不同结果,而且可读性差 a = i+ + i+ + i+; printf(“%d, %d, %d“, i+, i+,
2、 i+); for (i = 0; i != 0 很多教科书自作聪明地创造了很多复杂的题目来难为学生,就算它们的用法正确,实践中也未必用得到,全局变量要避免使用吗?,全局变量增大了模块之间的耦合度,而且不利于排错,罪大恶极 这罪恶不能怪全局变量,只能怪无限制的对全局变量的改写 不要让全局变量有复杂的数据结构 一旦数据结构变了,真的大祸临头了 最好利用static特性用函数对其进行封装,不要把goto判处死刑,问题不是出在goto,而是出在对标号的滥用 结构化程序设计中一个被忽视的原则 单入口,单出口 只要符合此原则,什么都可以用 goto在处理异常流程问题时,非常好用 退出多重循环 统一的错误
3、处理,吓死人的指针,“指针”出现,“难”字当头 从原理上了解指针,它是那么简单 一个普通变量,其值是一个内存地址 格守下列原则,指针使用永不出错 永远要清楚每个指针指向了哪里 永远要清楚指针指向的位置是什么,指针的兄弟:数组,不要把数组和指针分开,它们是紧密相连的 数组最简单 数组名是指针,数组成员是变量 多维数组麻烦些 关键要知道它在内存中是怎么分布的,脑细胞可贵,千万别用来背,算符优先级 知道先算括号足以 这样方便自己,也方便他人 库函数用法 会查联机帮助、手册最重要,变量占用的字节数,不同平台,不同编译器,可能会迥然不同 struct占字节数由编译参数决定 凡是需要字节数的地方,一律用s
4、izeof获得,没有“真”“假”,逻辑运算的结果只有整型数“0”和“非0” 很多编译器给出的非0结果是1,但这是特例 if (0) printf(“永远不会被执行”); while (1) /* 死循环 */ ,下列问题,要上升到阶级斗争的高度,指针指向不明 数组下标越界 数值运算溢出 除数为0 不检查函数的返回值 变量不初始化就使用,比较相等时用=,没用= 用=比较两个浮点数是否相等 返回局部变量的指针 malloc不free open不close,它们编译不出错,运行很可能也不出错,但一旦出错,就让人焦头烂额,0给字符串处理带来的,危险 假如0不存在,printf、strcpy、strcm
5、p等都将越界访存 处理字符串时,时刻要警惕0是否在其该出现的位置,C语言三大定律,表达式定律 任何能产生数值结果的运算、操作都可以作为表达式,并可以放到任何需要数值结果的地方,只要数值类型能够匹配 常见的可以产生数值结果的运算和操作 算术、逻辑、位运算等 ? :、&、*等 有返回值的函数 赋值 常见的需要数值的地方有: 赋值 条件判断 函数调用,C语言三大定律,类型定律 任何类型都可以在任何需要类型的地方使用;用任何类型定义的变量都要占用内存 已知特例 函数返回值不能定义为数组类型 函数参数定义为数组类型,此时该参数不占用内存,而是共享函数调用者传入的数组空间 常用类型 基本数据类型、指针、数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 程序设计 总结
链接地址:https://www.31doc.com/p-3401887.html