c语言的注意事项(未完,以后遇到问题继续添加)

1、注释:

c语言中的注释有:“” // “”、'" /* ... */ "。

需要注意的是" /*...*/  "和 表达式  y=x/*z 中的 " /* ";

y=x/*z 这个表达式的意思是y=x除以*z(*z是指针目标的值)。但是这样写表达式会报错,因为编译器会把 “ /* ”误认为是注释语句的开头。只有开头没有结尾就会报错。

修改方案 : A.   y=x/ *z,在 / 和 * 之间加一个空格。   B.  y=x/(*z),把 *z 括起来。

 

2、变量、函数的规范化(纯属个人习惯)

局部变量以小写字母命名;int student_id;

全局变量以首字母大写方式命名(骆驼式);int Student_Id;

宏定义常数以大写字母命名;#define STUDENT_ID  10    

定义类型小写 ; typedef unsinged int uint32_t ;

变量的作用域越大,它的名字所带有的信息就应该越多。

变量要注释他的功能。函数头也应该进行注释,例如函数名称、输入参数、返回值、功能说明。


3、运算符
优先级:

比如:if( x/3 || y*2 && z&j ) 这个表达式的运算优先级比较复杂,可以加上括号()。if(  ((x/3)  || ( y*2) ) &&  (z&j)  这样加上括号就可以百分之百的按照自己的想法运算。运算符的优先级只用记得  +、- 、* 、/ 和()就可以了。

 

4、if()语句里面的 =  和 ==:

if(a==0)和 if(a=0)的区别:  if(a==0) 里面 == 是比较运算 得出的结果为 true 和 false 也就是非零和 0。if(a=0)中 = 是赋值运算 ,先赋值 得到的结果是 if(a) ,a=0 则为false,a非零则为true。

5、不同数据类型之间比较的注意事项:布尔值不宜直接和0 、1 比较因为根据编译器的不同默认布尔值true 可能是 1,也可能是-1。 浮点型(小数)不能和整数用==和!=比较,因该用>=、<=来比较。

6、不管有没有无效分支, switch函数一定要defaut这个分支。防止程序运行过程中出现的意外 。
7、函数的参数和返回值没有的话最好使用void


8、一些常数和表格之类的应该放到code中去以节省RAM 。
code的作用是告诉单片机,我定义的数据要放在ROM(程序存储区)里面,写入后就不能再更改,因为C语言中没办法详细描述存入的是ROM还是RAM(寄存器),所以在软件中添加了这一个语句起到代替汇编指令的作用,
对应的还有data是存入RAM的意思。

code达到了一个宏定义的效果,但是用code修饰的常量能用指针指向它,宏定义的常亮指针不能指向它。

 

posted @ 2018-08-22 14:36  梦里梦见梦不见的  阅读(244)  评论(0编辑  收藏  举报