a =a+1;相当于 a += 1
同理 a-=2表示a=a-2;
自增自减运算符:
i = i+1相当于 i++或者++i;同理减也是如此。
两者的区别是什么呢?
i++:表示先赋值给i在自增;++i表示先增在赋值。
单独使用两者没有差别,但如果前面有赋值的话那就有差别了,比如:
前者打印的是6和5
后者则是6和6
因为前者先给i自增,后者则是先赋值在自增;
#include <stdio.h>
int main()
{
int i=5,j;
j=i++;
printf("i:%d\tj:%d\n",i,j);
i=5;
j=++i;
printf("i:%d\tj:%d\n",i,j);
return 0;
}
逗号运算符:逗号运算符的结果是最后一个表达式的值。
a=i,k,z;
结果是a的值是z;
当然,如果有计算的话,c语言执行是按照从左到右执行的。
a=(b=3,(c=b+4)+5)
打印a的值是12
因为先b=3,在c=7,再加5,最后a等于逗号的最后一个表达式。
条件运算符:表达式1?表达式2:表达式3
表达式1为真,执行表达式2,为假,执行表达式3(使用问号加冒号,条件运算符)
很多时候运用条件运算符可以减少代码的使用资源:比如下面这个完全可以写成:m=i>j?i:j
#include <stdio.h>
int main()
{
int i=5,j=2,m=6;
if(i>j)
{
m=i;
}
else
{
m=j;
}
}
注释:规范
1、变量命名可以加上注释,方便以后自己观看(这个变量是干嘛的,它的使用范围是多少)
2、程序和函数:写清楚它的功能、参数和返回值