你的位置:首页 > 操作系统

[操作系统]ios开发之C语言第4天

  • 自增和自减运算

  1. 自增运算符
    ++

  2. 自增表达式
    1>.前自增表达式.
        int num = 1;
        ++num;

    2>.后自增表达式
        int num = 1;
        num++;

    3>.无论是前自增表达式还是后自增表达式,都是将自身的值加1.

  3. 自增表达式是一个表达式,既然是一个表达式,那么这个表达式就一定有一个结果.
    那么我们就可以用一个变量将这个结果存储起来.

    1>.后自增表达式的结果的计算方式:
        先将自身的值取出来作为后自增表达式的结果.然后再将自身的值+1.

    2>.前自增表达式的结果的计算方式:
        先将自身的值+1,然后再将自身的值取出来,作为表达式的结果.

    a++ ——>  整个a++的式子的值是a ——>  a的值是 a+1
    ++a ——>  整个++a的式子的值是a+1 ——>  a的值是 a+1
    a-- ——>  整个a--的式子的值是a ——>  a的值是 a-1
    --a ——>  整个--a的式子的值是a-1 ——>  a的值是 a-1

  4. 自增运算符的优先级要比算术运算符的优先级高.
  5. 自减如是.
  6. 自增自减是一个单目运算(一个操作数)
 
 
  • 比较运算符与比较表达式

  1. 比较运算符
    > 大于
    < 小于
    >= 大于等于
    <= 小于等于
    == 等于
    != 不等于

  2. 比较表达式
    由比较运算符连接起来的表达式.
    int num1,num2;
    num1 > num2;

  3. 比较表达式的结果的类型

    1>.一个比较表达式代表: 1个条件.
         而一个条件的结果: 成立或者不成立.真的或假的.

    2>.在C语言中使用int数据类型的数据表示真假.
         0  代表假
        非0  代表真

    3>.如果比较表达式所描述的结果成立,结果 = 1
         如果比较表达式所描述的结果不成立,结果 = 0

    注意:判断两个数据是否相等,是两个等号==,1个等号叫赋值

  4. 比较表达式的两边可以使一个变量,也可以是常量,还可以是一个表达式.
    如果比较运算符的一边是表达式,会先计算这个表达式的结果,再与另一边的比较.
    例如:
    int num1 = 100;
    int num2 = 200;

    int res = num1 + num2 > 300;
    先计算num1 + num2 ,再与300比较.

  5. char数据也可以参与比较运算.
    那么比较的是相应的ASCII码.

  • 逻辑运算符与逻辑表达式

  1. 作用:判断多个条件的.使用逻辑运算符来指定多个条件之间的关系.

  2. 逻辑运算符
    && 逻辑与  并且
    ||    逻辑或
    !    非

  3. 逻辑表达式: 由逻辑运算符连接起来的式子
    逻辑表达式的结果:
    0  假
    非0 真

  4. && 逻辑与
    1>.断路问题:
         逻辑表达式,在执行的时候,是先计算左边的条件的结果,再计算右边的条件的结果
         当时&&逻辑运算符的时候,如果左边的条件不成立,那么整个逻辑表达式的结果为不成立.所以右边的条件,系统不会去判断,条件也不会被执行.

  5. || 逻辑或
    当只有一个条件成立时,结果就成立.只有当两边的条件都不成立时,结果才不成立.

    断路问题:逻辑或也存在此问题,当左边的条件为真时,右边的条件不会判断

  6. 优先级:
    逻辑运算符的优先级 比 比较运算符的优先级要低

  7. 逻辑运算符之间的优先级
    !     取反的优先级最高
    &&  其次的是逻辑与
    ||    最后是逻辑或

    优先级 万能公式
    ()  ">" -(负号) ">" ! ">" 算数运算符(+-*/%) ">" 比较运算符(><==...) ">"  && ">" ||

  8. 比较表达式和逻辑表达式.  统称为条件表达式
    条件表达式,描述的是一个或者多个条件.
 
 
  • IF结构

  1. 作用: 可以实现一段代码只有在满足特定条件的时候执行,否则不执行.
  2. 语法: 
    if(条件表达式)
    {
          代码1
    }

    条件表达式: 比较表达式  和  逻辑表达式
  3. 执行步骤:
    先判断条件表达式的真假,如果为真,则执行代码1,否则忽略代码1,往下执行.
 
  • 变量的作用域

  1. 变量的作用域如何寻找:
    向外寻找包裹着这个变量定义的语句的最近一层的大括号
  2. 寻找作用域
    int main( )
    {
        int num = 1;
        {
            int num2 = 2;
            {
                 int num3 = 3;
            }
        }
        return 0;
    }

    以上num,num2,num3的作用域都不一样.
  3. 变量在自己的作用域内可以被访问,不受内层的大括号限制
    int main( )
    {
         int num = 1;
        {
            num = 2;
            {
                printf("%d\n",num);
            }
        }
        return 0;
    }
  4. 外层作用域可以和内层作用域的变量同名,使用遵循就近原则
    int main( )
    {
        int num = 1;
        {
            int num = 2;
            printf("%d\n",num);
        }
        return 0;
    }
  5. 变量出了自己的作用域就会被操作系统从内存中回收,程序员就无权再使用
    int main( )
    {
        {
            int num = 2;
            printf("%d\n",num);
        }
        printf("%d\n",num);
        return 0;
    }