《手把手教你学C语言》学习笔记(4)---代码规范
编程过程中需要遵守编译器的各种约定,例如以下代码:
1 #include <stdio.h>
2
3 int main(int argc, char **argv)
4 {
5 printf("Hello World!\n");
6
7 return 0;
8 }
无论多么简单的程序,必须能够通过编译的检查和编译,否则就不能运行。也就是说代码需要遵从编程语言的语法规则。我们说的代码规范,只是一种约定俗成,会让你的代码更容易阅读和调试,让你更容易进入下一个编程境界。
下面说下代码的规范,算是个简单入门吧!
- 空行的应用规范:(1)、变量(群)定义后需要加上一个空行;(2)、内部函数实现的前后需要各加一个空行;(3)、return语句前面需要加一个空行;(4)、#include语句后需要加一个空行;(5)、代码逻辑功能完整后需要添加一个空行。
- 空格的应用规范:(1)、关键字后要加一个空格;(2)、函数名与‘(’之间不要加空格;(3)、‘,’、‘;’、‘)’、‘]’和‘}’之前不要加空格;(4)、‘,’之后加一个空格;(5)、双目运算符的前后需要各加一个空格;(6)、单目运算符前后不加空格;(7)、‘[]’数组符号、‘.’成员运算符与‘->结构体指针成员运算符’等前后不加空格。
- 注释的应用规范:(1)、一般要求注释量不低于源代码的30%;(2)、注释分为单行注释和多行注释,简单注释时采用单行注释;(3)、注释主要用来理解代码,不能用来画蛇添足;(4)、注释必须在写代码的过程中书写,修改代码的同时,相关的注释也必须一并修改;(5)、多重嵌套的开始处需要添加适当的注释;(6)、每条宏定义需要添加注释;(7)、每个方法(函数)前面需要添加注释,内容包括方法的返回值的意义,方法需要的参数值及方法的作用,有时需要添加上版权信息。
- 代码行的应用规范:(1)、原则上一行代码只做一件事情,还而言之只写一条语句;(2)、语句块需要加上{},即使该语句块只有一条语句,并且语句块中的代码,根据逻辑不同添加不同的空行和实现不同的对齐;(3)、成对符号的书写,最好在写完左半部分后就及时补上右半部分,避免漏写右半部分;(4)、{}的对齐,需要位于不同的行,但必须位于同一列;(5)、{}内的代码同等地位需要左对齐,不同地位的需要继续向右缩进,一次向右缩进一个层次;(6)、缩进一般通过键盘的tab键实现,每按一次按键增加一个缩进层次,通过不同的缩进使程序代码显得更加有层次感,便于代码的阅读和理解。
代码的规范其实有很多,但是不是必须的,只是为了让代码更整齐,更悦目,更容易阅读和理解而建立起来的一套规范,对初学者来说,不需要刻意去记忆这些编码的规范,但是可以通过多次敲写代码,大量的联系,不停的积累,以后写代码就会慢慢的形成自己的规范了。建议初学者可以使用适当的工具,个人不建议使用IDE开发工作,如果只是C语言,强烈建议使用VIM编辑器,外加Gcc编译器和Gdb调试器和make自动编译工作,比任何一个IDE功能更加强大,使用更加灵活,让你的学习更加深入。
《手把手教你学C语言》学习笔记(4)---代码规范的更多相关文章
- 《手把手教你学C语言》学习笔记(2)---学习C语言的目标和方法
一.学习C语言的目标主要是: 熟练掌握C语言的关键字,语法规则,程序控制等: 掌握基本的数据结构,数组.链表.栈和队列等: 掌握C语言中指针和内存.数组与指针.函数与指针.变量和指针.结构体和指针.硬 ...
- 《手把手教你学C语言》学习笔记(1)---C语言的特点
学习C语言的原因,主要是需要使用C语言编程,我用故我学,应该是最主要的原因了. C语言的定位:C语言严格意义上只能算是中级语言,是面向过程编程语言的集大成者,虽然这种语言有很多的问题,但总体而言是瑕不 ...
- 《手把手教你学C语言》学习笔记(10)--- 程序的循环控制
C语言程序设计中,有些代码需要重复执行很多次,循环主要有三类: 一.for循环 1.基本格式为:for(表达式1:表达式2:表达式3){ //表达式1:循环变量赋初值 //表达式2:循环变量满足的条件 ...
- 《手把手教你学C语言》学习笔记(9)--- 程序的选择控制
C语言是面向过程编程语言的主要代表,其特征就是严格控制程序的执行语句顺序,因此,C程序的主要结构控制就是顺序控制,以main函数为入口函数,根据控制,一条一条地执行语句.由于实际需求是很复杂的,只用顺 ...
- 《手把手教你学C语言》学习笔记(8)--- 运算符和表达式
C语言编程的核心是指针和库,而库的核心就是函数,函数的基本组成部分就是语句. C语言合法表达式加上分号(语句结束符)构成C函数的基本部分语句.如果只有分号没有表达式就构成空语句,空语句常常用来形成占位 ...
- 《手把手教你学C语言》学习笔记(7)---程序的输入与输出
程序设计中,为了观察程序的运行状态和结构,需要输出指定的内容:为了让程序能够更加灵活,可以根据需求输入内容,让计算机处理和运行:所以程序的输入输出就显的尤为重要.主要包括printf和scanf函数. ...
- 《手把手教你学C语言》学习笔记(6)---数据类型和常量
计算机中需要保存信息,就需要数据存储,数据的存储就需要划分数据类型.主要包括:基本数据类型.指针类型.构造类型.空类型. 基本类型:整型---主要用来表示整数,可以分为无符号和有符号:又分为基本整型. ...
- 《手把手教你学C语言》学习笔记(5)---计算机的存储和访问
数据存储是以“字节”(Byte)为单位,数据传输是以大多是以“位”(bit,又名“比特”)为单位,一个位就代表一个0或1(即二进制),每8个位(bit,简写为b)组成一个字节(Byte,简写为B),是 ...
- 《手把手教你学C语言》学习笔记(3)---变量
编程目的是为了解决问题,编程本质是用计算机的思维操作数据,操作就是算法,数据主要是数据类型,也可以说量,其中分为常量和变量,常量主要是指在量的生命周期内无法改变其值:变量主要是指在量的生命周期内可以随 ...
随机推荐
- CSS 实现单行、多行文本溢出显示省略号
单行溢出 width:200px; overflow:hidden; text-overflow:ellipsis; -o-text-overflow:ellipsis; -webkit-text-o ...
- JZOJ 3508. 【NOIP2013模拟11.5B组】好元素
3508. [NOIP2013模拟11.5B组]好元素(good) (File IO): input:good.in output:good.out Time Limits: 2000 ms Mem ...
- 2015-2016 Northwestern European Regional Contest (NWERC 2015)
训练时间:2019-04-05 一场读错三个题,队友恨不得手刃了我这个坑B. A I J 简单,不写了. C - Cleaning Pipes (Gym - 101485C) 对于有公共点的管道建边, ...
- 51nod 1107 斜率小于零连线数量 特调逆序数
逆序数的神题.... 居然是逆序数 居然用逆序数过的 提示...按照X从小到大排列,之后统计Y的逆序数... 之后,得到的答案就是传说中的解(斜率小于零) #include<bits/stdc+ ...
- Asp.net自定义控件开发任我行(附1)-属性一览众山小
元数据属性应用于服务器控件及其成员,从而提供由设计工具.ASP.NET 页分析器.ASP.NET 运行库以及公共语言运行库使用的信息.当页开发人员在可视化设计器中使用控件时,设计时属性能改进开发人员的 ...
- 设计模式之序章-UML类图那点事儿
设计模式之序-UML类图那点事儿 序 打14年年底就像写那么一个系列,用于讲设计模式的,代码基于JAVA语言,最早接触设计模式是大一还是大二来着,那时候网上有人给推荐书,其中就有设计模式,当时给我推荐 ...
- RHCE认证经典考题
1:按要求创建用户组及多个用户,设置用户的候选组,设置用户的默认shell. 创建组adminuser. 创建用户natasha和harry属于该组(该组为他们的第二个组). 创建用户sarah,不属 ...
- python 使用 vscode 调试
vscode安装python扩展,在vscode扩展管理器中搜索pyhon, 排名第一的就是我们需要下载的包—python.点击安装后重载窗体 点击调试–打开launch.json的按钮(那个小齿轮的 ...
- Python 拓展之特殊函数(lambda 函数,map 函数,filter 函数,reduce 函数)
写在之前 今天给大家介绍几个比较特殊的函数,他们具有函数式编程的特点,有人将它们视为 Python 可进行 "函数式编程" 的见证,至于什么是函数式编程,不是本篇文章的重点,感兴趣 ...
- PAT——乙级1012
1012 数字分类 (20 point(s)) 给定一系列正整数,请按要求对数字进行分类,并输出以下 5 个数字: A1 = 能被 5 整除的数字中所有偶数的和: A2 = 将被 5 除后 ...