zoukankan      html  css  js  c++  java
  • C语言学习系列(六)基本语法

    一、C运算符

    • 算术运算符(语法和java类似或基本一样略过不再描述)

    • 关系运算符(略)

    • 逻辑运算符(略)

    • 位运算符

    运算符描述实例
    & 如果同时存在于两个操作数中,二进制 AND 运算符复制一位到结果中。 (A & B) 将得到 12,即为 0000 1100
    | 如果存在于任一操作数中,二进制 OR 运算符复制一位到结果中。 (A | B) 将得到 61,即为 0011 1101
    ^ 如果存在于其中一个操作数中但不同时存在于两个操作数中,二进制异或运算符复制一位到结果中。 (A ^ B) 将得到 49,即为 0011 0001
    ~ 二进制补码运算符是一元运算符,具有"翻转"位效果,即0变成1,1变成0。 (~A ) 将得到 -61,即为 1100 0011,一个有符号二进制数的补码形式。
    << 二进制左移运算符。左操作数的值向左移动右操作数指定的位数。 A << 2 将得到 240,即为 1111 0000
    >> 二进制右移运算符。左操作数的值向右移动右操作数指定的位数。 A >> 2 将得到 15,即为 0000 1111
    • 赋值运算符(略)

    运算符描述实例
    = 简单的赋值运算符,把右边操作数的值赋给左边操作数 C = A + B 将把 A + B 的值赋给 C
    += 加且赋值运算符,把右边操作数加上左边操作数的结果赋值给左边操作数 C += A 相当于 C = C + A
    -= 减且赋值运算符,把左边操作数减去右边操作数的结果赋值给左边操作数 C -= A 相当于 C = C - A
    *= 乘且赋值运算符,把右边操作数乘以左边操作数的结果赋值给左边操作数 C *= A 相当于 C = C * A
    /= 除且赋值运算符,把左边操作数除以右边操作数的结果赋值给左边操作数 C /= A 相当于 C = C / A
    %= 求模且赋值运算符,求两个操作数的模赋值给左边操作数 C %= A 相当于 C = C % A
    <<= 左移且赋值运算符 C <<= 2 等同于 C = C << 2
    >>= 右移且赋值运算符 C >>= 2 等同于 C = C >> 2
    &= 按位与且赋值运算符 C &= 2 等同于 C = C & 2
    ^= 按位异或且赋值运算符 C ^= 2 等同于 C = C ^ 2
    |= 按位或且赋值运算符 C |= 2 等同于 C = C | 2
    • 杂项运算符(略)

    运算符描述实例
    sizeof() 返回变量的大小。 sizeof(a) 将返回 4,其中 a 是整数。
    & 返回变量的地址。 &a; 将给出变量的实际地址。
    * 指向一个变量。 *a; 将指向一个变量。
    ? : 条件表达式 如果条件为真 ? 则值为 X : 否则值为 Y

    二、C 中的运算符优先级

    类别 运算符 结合性 
    后缀  () [] -> . ++ - -   从左到右 
    一元  + - ! ~ ++ - - (type)* & sizeof  从右到左 
    乘除  * / %  从左到右 
    加减  + -  从左到右 
    移位  << >>  从左到右 
    关系  < <= > >=  从左到右 
    相等  == !=  从左到右 
    位与 AND  从左到右 
    位异或 XOR  从左到右 
    位或 OR  从左到右 
    逻辑与 AND  &&  从左到右 
    逻辑或 OR  ||  从左到右 
    条件  ?:  从右到左 
    赋值  = += -= *= /= %=>>= <<= &= ^= |=  从右到左 
    逗号  从左到右 

    三、C的判断、循环(略)

    C 语言把任何非零非空的值假定为 true,把或 null 假定为 false

    语句描述
    if 语句 一个 if 语句 由一个布尔表达式后跟一个或多个语句组成。
    if...else 语句 一个 if 语句 后可跟一个可选的 else 语句,else 语句在布尔表达式为假时执行。
    嵌套 if 语句 您可以在一个 if 或 else if 语句内使用另一个 if 或 else if 语句。
    switch 语句 一个 switch 语句允许测试一个变量等于多个值时的情况。
    嵌套 switch 语句 您可以在一个 switch 语句内使用另一个 switch 语句。

    ? : 运算符(三元运算符)  :  Exp1 ? Exp2 : Exp3;

    循环类型描述
    while 循环 当给定条件为真时,重复语句或语句组。它会在执行循环主体之前测试条件。
    for 循环 多次执行一个语句序列,简化管理循环变量的代码。
    do...while 循环 除了它是在循环主体结尾测试条件外,其他与 while 语句类似。
    嵌套循环 您可以在 while、for 或 do..while 循环内使用一个或多个循环。
    控制语句描述
    break 语句 终止循环或 switch 语句,程序流将继续执行紧接着循环或 switch 的下一条语句。
    continue 语句 告诉一个循环体立刻停止本次循环迭代,重新开始下次循环迭代。
    goto 语句 将控制转移到被标记的语句。但是不建议在程序中使用 goto 语句。

            if ( U.read(me.Blog) ) $("#推荐").click();
            if ( U.copy(me.Blog) ) $("#u Blog").console("原文链接:http://www.cnblogs.com/Grand-Jon/p/7538467.html ");
            else me.Fuck(U);
  • 相关阅读:
    java中原子操作的实现分析
    AQS源码分析
    Java JNDI 学习
    门面模式、代理模式、适配器模式的区别
    tomcat源码阅读之StandardWrapper解析
    tomcat源码阅读之过滤器
    tomcat源码阅读之SingleThreadModel
    tomcat源码阅读之单点登录
    技术人员的八条宝贵经验,时刻提醒自己,共勉之
    tomcat源码阅读之安全机制
  • 原文地址:https://www.cnblogs.com/Grand-Jon/p/7538467.html
Copyright © 2011-2022 走看看