一、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);

转载于:https://www.cnblogs.com/Grand-Jon/p/7538467.html

C语言学习系列(六)基本语法相关推荐

  1. Ruby语言学习系列--基本的ruby语法

    Ruby语言学习系列--基本的ruby语法 1.     基本的ruby语法 1.1      变量.常量和类型 1)      定义变量 变量类型 描述 示例 局部变量(或伪变量) 以小写字母或下划 ...

  2. R语言学习系列之向量化计算

    ##R语言学习系列之向量化计算 本文主要讲解R语言向量化计算的原理及方法,希望对初学者能够提供帮助. ##一.向量化 什么是向量化计算呢?其实你可以简单的理解成这样:当我们在使用函数或者定义函数的时候 ...

  3. R语言学习系列之本地数据获取

    R语言学习系列之本地数据获取 任何数据分析工作之前,都得把数据先读取进来你才能进行后续的分析工作.所以本文简要介绍在R中如何对本地文件进行获取,希望可以给刚刚接触R语言的同学一点启发. 一.控制台的输 ...

  4. Android音视频学习系列(六) — 掌握视频基础知识并使用OpenGL ES 2.0渲染YUV数据

    系列文章 Android音视频学习系列(一) - JNI从入门到精通 Android音视频学习系列(二) - 交叉编译动态库.静态库的入门 Android音视频学习系列(三) - Shell脚本入门 ...

  5. Go 语言入门系列:基本语法介绍之变量的声明与初始化

    各位同学端午安康! 前文回顾 前面的文章介绍了 Go 相关的特性与入门案例,对于一门编程语言,变量和语法是我们首先需要掌握的.Go 在语法上与 C 语言有很多相似支持,但是比 C 语言更加简约.如果你 ...

  6. STM32-USB学习系列(六):USB-HID键盘的实现以及键盘报文描述符的简介

    目录 一.整体步骤 二.USB 鼠标HID更改成键盘HID步骤 1.使用STM32CubeMX生成鼠标HID模版,并且进行修改 2.修改HID的接口描述符与报文描述符 3.修改USBD_HID_Set ...

  7. 【Python学习系列六】Python语言基本语法

    1. Python语言简介 Python是一种面向对象的解释型计算机程序设计语言,由Guido van Rossum于1989年发明,第一个公开发行版发行于1991年. Python是纯粹的自由软件, ...

  8. Python语言学习系列------基础语法(一)

    本博客系列为自己按照网上视频教学学习python的一个随笔系列文章,也不知道会更新到多少,反正闲开个坑呗. 一.高级语言的分类 高级的编程语言分为解释型语言和编译型语言,两者的区别是主要是:在执行前是 ...

  9. python语言的语法_Python语言学习系列------基础语法(一)

    本博客系列为自己按照网上视频教学学习python的一个随笔系列文章,也不知道会更新到多少,反正闲开个坑呗. 一.高级语言的分类 高级的编程语言分为解释型语言和编译型语言,两者的区别是主要是:在执行前是 ...

最新文章

  1. APACHE多个服务器的配置
  2. 编程第一个Apple Watch程序创建项目
  3. 我的erlang TCP服务器
  4. PHP内核探索之变量(1)Zval(自己看过不错儿)
  5. C# 配置文件 自定義結點
  6. powershell /遍历/psobject/字符串转换Json/json数组操作
  7. 1143 Lowest Common Ancestor 甲级
  8. python调用百度地图画轨迹图_[宜配屋]听图阁
  9. scala 方法调用_Scala中的方法调用
  10. 树形结构 —— 树与二叉树 —— 树的重心
  11. mysql mvcc机制rc_Mysql中MVCC的使用及原理
  12. linux更改文件属性宁静,shell /dev/null 21 ( linux空设备文件和重定向)
  13. jsp之建立一个九九乘法表
  14. svm各种工具箱(先放着了,省的找起来麻烦^.^)
  15. 6.Exchanger-交换机
  16. DSShop单用户TP5框架B2C开源商城源码v3.0.2
  17. linux open详解,Linux系统open函数详解
  18. gb/t19011-2013 管理体系审核指南
  19. 软件测试面试常见问题
  20. (c++ 遗传算法解决TSP问题)不是吧,这就是遗传算法吗?爱了爱了

热门文章

  1. python保存数据_python各数据存储方法
  2. 腾讯云短信发送api(SendSms)--java
  3. WIN10常用快捷键(打开资源管理器、显示桌面、截图)
  4. SpringBoot配置多Redis数据源
  5. MYSQL数据库中触发器禁用、启用、查询
  6. 各个系统下关闭占用端口号的进程
  7. 灵玖软件:九眼智能文档核查云平台上线了
  8. 专访阿里云雁杨:因需求而进化,ECS云服务器追求弹性极致
  9. marathon新建应用映射端口限制
  10. Linux中的进程调度(六)