美文网首页想法简友广场C++学习笔记
第六章 分支语句和逻辑运算符(1)if语句和逻辑表达式

第六章 分支语句和逻辑运算符(1)if语句和逻辑表达式

作者: 阿厉a_li | 来源:发表于2019-12-11 11:17 被阅读0次

    (一)if语句和逻辑表达式

    1.if语句

        if语句有两种结构,if和if  else,同时,if语句在else之后还可以再嵌套if else。这样可以形成如下多个分支的结构:

    if (test_expression)

     Statement1;

     else if ()

     Statement2;

     else if ()

     Statement3;

     else if ()

     Statement4;

    else

    Statement5;

    但是,是相近的if else是一对的,而不是最前和最后,只不过这种格式看起来更好看一些。if else结构总是最近的if else配对,这是需要注意的。

        编写让编译器能够发现错误的代码,比找出导致难以理解的错误的原因要容易得多。因此,当用if语句的判断的时候,我们可以将例如a==2这样的判断写成2==a,这样一旦将==运算符错误写出=运算符的时候,编译器就会发现错误并提醒。

    2.逻辑表达式

        c++采用三种不同的逻辑运算符,来组合或修改已有的逻辑表达式逻辑或||逻辑与&&,逻辑非!

        逻辑非!一般应用于返回值为true或false的函数中,作为下一步运行的判断语句。

        另外,c++的&&和||运算符的优先级要小于关系运算符!运算符要大于所有的关系运算符和算数运算符。也就是说a==3 || b==4这样的表达式不需要使用括号,而形如!b==4这样的形式需要使用括号,上面的是错误的,因为!将会与b结合,而我们需要的其实是这样的判断!(b==4)。||运算符和&&运算符也是一个顺序点,因此会先判定左侧并且在右侧被判定之前产生副作用,更需要注意的是,如果左侧的判断已经能够对整体判断造成决定影响,那么运算符右侧的表达式将不会被运算。

    对于逻辑表达式及关系表达式来说,有括号可以让程序更加明显和容易理解,因此,不管需不需要使用括号,我们尽量还是要用括号将先进行的判断括起来,这一方面可以让别人或自己看程序方便,另一方面也避免了因为记忆不准确或规则变化而带来的运算错误。注意,逻辑与运算符&&比逻辑或运算符||的优先级要高!

    and,or,not是上面的与或非的字符表达的方式,可以完全代替&&,||,!。(还有and_eq,or_eq,not_eq这种加等号的形式)。

    相关文章

      网友评论

        本文标题:第六章 分支语句和逻辑运算符(1)if语句和逻辑表达式

        本文链接:https://www.haomeiwen.com/subject/dixygctx.html