C语言中的条件表达式
看一下例子:
[root@CWG hc]# cat tjbds.c
#include <stdio.h>
main()
{
int a = 2, b = 3, c;
if (a > b) //如果a大于b
c = a; //c的值就等于a
else //要么
c = b; //c的值就等于b
fprintf(stdout, "c = %d\n", c);
}
[root@CWG hc]# ./tjbds
c = 3 //可见c的值等于了b
如果用三元运算表达式可写成如下形式:
[root@CWG hc]# cat tjbds.c
#include <stdio.h>
main()
{
int a = 2, b = 3, c;
c = (a > b) ? a : b; //c的值等于(a > b) ? a : b这个表达式的结果 这个表达式的运算方法是首先比较a>b则这个表达式的值将返回a 如果a>b这个表达式不成立,则返回值b
fprintf(stdout, "c = %d\n", c);
}
[root@CWG hc]# ./tjbds
c = 3 //可见不成立,返回了b的值
这两种方式都能实现同样的表达结果,但是第二中的比第一种的要简单和易读性高很多!
编程也是一种艺术
#############################
迷途小运维学习C程序语言笔记
作者:john
转载请注明出处!