转载请标明出处:
http://blog.csdn.net/hai_qing_xu_kong/article/details/53453499
本文出自:【顾林海的博客】

前言

前篇笔记记录了变量与类型的相关知识点,接下来是关于if和else语句的笔记,由于这些都是最简单的东西,因此下面会做个总结,并不会很深入的讲解。笔记最后会给出一些使用条件语句的建议,这些建议均来自《代码大全》,很值得大家学习并在实际开发中使用。

语法

if(boolean_expression) {
    /* statement(s) will execute if the boolean expression is true */
} else {
    /* statement(s) will execute if the boolean expression is false */
}

如果布尔表达式的计算结果为true,则if块中的代码将被执行,否则else块的代码将被执行。
作为真正的C编程语言承担任何非零和非空值,如果它是零或空(null),那么它被假设为假值。

实例

#include <stdio.h>

int main(int argc, const char * argv[]) {
    float weight=56.23;

    if(weight<56){
        printf("weight=%f \n",weight);
    }else{
        printf("error \n");
    }

    return 0;
}

程序中规定重量不能大于等于56,因此输出erro。

最后看下面这段程序:

#include "stdio.h"

#define BOOL int
#define TRUE 1
#define FALSE 0


BOOL flag = FALSE;

BOOL isError(float weight){

    flag=weight>56?FALSE:TRUE;

    return flag;

}

int main(int argc, const char * argv[]) {
    float weight=56.23;

    isError(weight)?printf("error \n"):printf("weight=%f \n",weight);

    return 0;
}

输出结果与上面一样,这种根据条件表达式的结果为变量赋值的情况,被称为三元运算符,位于?之前的部分是条件表达式,位于?之后的两个值分别对应表达式计算结果为真或假的情况。

使用技巧

在写if语句的时候遵循下述指导原则:

首先写正常代码路径;再处理不常见的情况,在编写代码时,要使得正常情况的执行路径在代码中是清晰的。确认那些不常见的情况不会遮掩正常的执行路径。这对可读性和代码性能来说都很重要。

把正常情况的处理放在 if 后面而不要放在else 后面,把你认为会正常出现的情况放在前面处理。这符合把决策的结果代码放在尽可能靠近决策位置的一般原则。

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐