补.从零开始学习C语言--运算符补充(自增/自减、三目、逗号)
2013-06-20 13:20
344 查看
自增/自减 运算符
功能:操作对象自增或自减1;
(自减和自增用法一致,这里用自增的用法来说明)
分类:
前自增:++i
后自增:i++
前/后 自增的异同
相同:最终i的值都加1;
不同:后自增整体表达式的值是i加1前的值;
前自增整体表达式的值是i加1后的值;
举例说明:
k = ++i; 是先执行i=i+1,再执行k=i;
k = i++; 是先执行k=i;再执行i=i+1;
注意要点:
1.编程时,尽量屏蔽++i和i++的区别
如:尽量不要写k=i++,因为k=i++和k=++i有区别;
而for (i; i<100; ++i) 则推荐使用,因为这里的for (i; i<100; ++i)和for (i; i<100; i++) 没有区别。
2.自增应单独成语句,不要嵌套使用
如:int m = ++i + i++ + i; 这样写是不对的,不但是不规范的代码,而且是不可移植的代码,在不同的编译器的运行结果有可能不一样;
再如:prinft (“%d %d %d”,i++ ,++i, i); 这样写也不对,理由同上。
三目运算符
?:
格式:A ? B : C
功能:类似if语句的功能
if (A)
B;
else
C;
举例:i = (5>3 ? 10 : 20); 因为5>3成立,所以最终i的值等于10。
逗号表达式
格式:(A, B, C, D)
功能:从左向右执行
最终表达式的值为最后一项的值
注意:逗号是一种执行顺序点,即在遇到逗号时,逗号之前的表达式要执行完得到结果。
举例:
int i = 0;
int j = 1;
i = (j++, ++j, j+2, j-1);
最终i的值为2;执行进程为:
i = j++ >> i = 1 j = 2
i = ++j >> i = 3 j = 3
i = j+2 >> i = 5 j = 3
i = j -1 >> i = 2 j = 3
功能:操作对象自增或自减1;
(自减和自增用法一致,这里用自增的用法来说明)
分类:
前自增:++i
后自增:i++
前/后 自增的异同
相同:最终i的值都加1;
不同:后自增整体表达式的值是i加1前的值;
前自增整体表达式的值是i加1后的值;
举例说明:
k = ++i; 是先执行i=i+1,再执行k=i;
k = i++; 是先执行k=i;再执行i=i+1;
注意要点:
1.编程时,尽量屏蔽++i和i++的区别
如:尽量不要写k=i++,因为k=i++和k=++i有区别;
而for (i; i<100; ++i) 则推荐使用,因为这里的for (i; i<100; ++i)和for (i; i<100; i++) 没有区别。
2.自增应单独成语句,不要嵌套使用
如:int m = ++i + i++ + i; 这样写是不对的,不但是不规范的代码,而且是不可移植的代码,在不同的编译器的运行结果有可能不一样;
再如:prinft (“%d %d %d”,i++ ,++i, i); 这样写也不对,理由同上。
三目运算符
?:
格式:A ? B : C
功能:类似if语句的功能
if (A)
B;
else
C;
举例:i = (5>3 ? 10 : 20); 因为5>3成立,所以最终i的值等于10。
逗号表达式
格式:(A, B, C, D)
功能:从左向右执行
最终表达式的值为最后一项的值
注意:逗号是一种执行顺序点,即在遇到逗号时,逗号之前的表达式要执行完得到结果。
举例:
int i = 0;
int j = 1;
i = (j++, ++j, j+2, j-1);
最终i的值为2;执行进程为:
i = j++ >> i = 1 j = 2
i = ++j >> i = 3 j = 3
i = j+2 >> i = 5 j = 3
i = j -1 >> i = 2 j = 3
相关文章推荐
- 补.从零开始学习C语言--C语言补充_goto语句
- c语言学习之基础知识点介绍(四):算术运算符和逗号表达式
- 5.从零开始学习C语言--C语言运算符和流程控制
- 14.从零开始学习C语言--指针
- 21.从零开始学习C语言--算法
- C语言学习_005_运算符、表达式和语句
- 【C语言学习】《C Primer Plus》第5章 运算符、表达式和语句
- c语言中逗号运算符的作用
- 【C语言的学习】第五回合:运算符的优先级大集合
- c语言中逗号运算符和逗号表达式
- C语言学习大纲--运算符
- C语言中的逗号运算符
- c语言学习之基础知识点介绍(二):格式化控制符和变量的补充
- 22.从零开始学习C语言--链表
- 从零开始学习c++之选择循环结构、运算符、初始vector
- 13.从零开始学习C语言--函数
- C语言学习-顺序结构+运算符选讲
- C语言的逗号运算符
- C语言:逗号运算符和逗号表达式
- 补.从零开始学习C语言--C风格字符串