您的位置:首页 > 编程语言 > C语言/C++

c语言-栈、堆和静态区 以及编码风格小结

2017-12-14 17:01 246 查看
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行代码之内
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: