c语言-栈、堆和静态区 以及编码风格小结
来源:互联网 发布:四下美术教学软件 编辑:程序博客网 时间:2024/06/05 16:51
1、堆:由malloc系列函数或new操作符分配的内存。其生命周期由free或delete决定。
在没有释放之前一直存在,直到程序结束。其特点是使用灵活,空间比较大,
但容易出错。
2、栈:保存局部变量。栈上的内容只在函数的范围内存在,当函数运行结束,这些
内容也会自动被销毁。其特点是效率高,但空间大小有限。
3、静态区:保存自动全局变量和static变量(包括static全局和局部变量)。静态区
的内容在整个程序的声明周期内都存在,由编译器在编译的时候分配。
在看C语言深度剖析这本书的时候,看到编码风格这一章节,发现自己之前编码的时候很不规范,所以在此小结一下:
1、每一个函数都必须有注释,即使函数短到可能只有几行。
2、每个函数定义结束之后以及每个文件结束之后都要加一个或者若干个空行。
3、在一个函数体内,变量定义与函数语句之间要加空行
4、逻辑上密切相关的语句之间不加空行,其他地方应加空行分隔
5、复杂的函数中,在分支语句、循环语句结束之后需要适当的注释,方便区分各分支或循环体
6、修改别人的代码的时候,不要轻易删除别人的代码,应该用适当的注释方式
7、用缩行显示程序结构,使排版整齐,缩进量统一使用4个字符(不适用TAB缩进)
8、在函数体的开始、结构/联合的定义、枚举的定义以及循环、判断等语句中的代码都要采用缩行
9、代码行最大长度宜控制在80个字符以内,较长的语句、表达式等要分成多行书写
10、长表达式要在低优先级操作符处划分新行,操作符放在新行之首(以便突出操作符)。拆分除的新行要进行适当的缩进,使排版整齐,语句可读
11、如果函数中的参数较长,则要进行适当的划分
12、尽量避免含有否定运算的条件表达式。例如:
if(! (num >= 10)) 应改为 if( num < 10)
13、参数的书写要完整,不要贪图省事只写参数的类型而省略参数名字。如果函数没有参数,则用void填充
14、参数命名要恰当,顺序要合理
15、函数体的规模要小,尽量控制在80行代码之内
- c语言-栈、堆和静态区 以及编码风格小结
- C语言栈、堆和静态区
- C语言栈、堆和静态区
- C语言栈、堆和静态区
- c语言中堆、栈和静态区
- C语言编码风格和标准
- C语言编码风格
- C语言编码风格
- Linux C语言编码风格
- C语言中的注释风格小结
- C语言编程之道 (有感 静态变量和动态变量, 静态存储方式和动态存储方式 堆+栈)
- 堆、栈和静态区
- 栈、堆和静态区
- 栈、堆和静态区
- Linux下C语言编码的风格
- C语言好的编码风格
- 高级C语言教程编码风格
- C语言程序的内在分配:堆和栈以及char a[]和char*的区别
- 最近一个项目的简介
- Android apk 命名混合签名
- eclipse创建maven动态web项目完整示例
- Android低功耗蓝牙译文(三)
- shell脚本中赋值给变量中有空格, 导致命令执行失败
- c语言-栈、堆和静态区 以及编码风格小结
- Extjs问题 -- grid只能显示一条数据
- 请实现一个函数按照之字形打印二叉树,即第一行按照从左到右的顺序打印,第二层按照从右至左的顺序打印,第三行按照从左到右的顺序打印,其他行以此类推。
- [centos] 使用package升级cloudera manager 5.13
- 谈一谈Go的方法method的使用方法
- 不能写博客
- Android低功耗蓝牙译文(四)
- React入门笔记(三):表单、事件、Ref属性
- gulp前端自动构建工具 ------- 插件包