• 表达式:表达式是c语言的主体,在c语言中,表达式由操作符和操作数组成。简单的表达式可以只有一个操作数。根据操作符的个数,可以将表达式分为简单表达式和复杂表达式,简单的表达式只含有一个操作符(如:5+5),而复杂的表达式则含有两个或者两个以上的操作符(如5+5+6*4);表达式是本身什么事情也不做,只是返回结果的值,在程序不多结果值做任何处理的情况下,返回的结果值不起任何作用;表达式产生的作用有两种情况:(1)放在赋值语句的右侧;(2)放在函数的参数中。
  • 赋值运算符和赋值表达式:“=”就是赋值运算符,其作用是将一个数据赋值给一个变量。变量的赋初值(int iNumber=12;char cMyChar=‘a’;int iAmount=1+2)。
  • 自动类型转换:低级数据向高级转换,低级数据会变高级,数据不会失真;高级数据向低级数据转换时,数据级别会降低,并且会发生截断(如float fMum=1.02f;int j=i)。
  • 强制类型转换:如float i=1.01f;int j=(int)i;
#include<stdio.h>
int main()
{
char cChar; /*字符型变量*/
short int iShort; /*短整型变量*/
int iInt; /*整形变量*/
float fFloat=70000; /*浮点型变量*/
cChar=(char)fFloat; /*强制赋值转换*/
iShort=(short)fFloat;
iInt=(int)fFloat;
printf(".........");
return 0;
}
  • 算数运算符和表达式:单目运算符(正,负);双目运算符(乘法,除法,取模,加法,减法);优先级分别是(单目运算符,乘法、除法、取模,加法、减法)。
  • 算术表达式:含有算术运算符的表达式。
  • 算术运算符的结合性:当算术运算符的优先级相同的时候,结合方向是自左向右(如a-b+c)。
  • 自增自减运算符:自增运算符“++”和自减运算符“--”。自增运算符和自减运算符对变量的操作分别是增加1和减少1;
int a=1,b=1,c;
c=++a;//c的值为2,a的值为2
c=b++;//c的值为1,b的值为2
//当自增自减运算符在变量的前面时,变量在参加表达式之前就完成了自增或者自减运算;
//当放在后面时,变量在参加表达式之后完成自增或自减;
  • 关系运算符和表达式:关系运算符的作用就是判断两个操作数的大小关系,关系运算符包括:>,>=,<,<=,==,!=。优先级和结合性:关系运算符的结合性是自左向右的。
  • 逻辑运算符和表达式:逻辑运算符根据表达式的真或者假属性返回其真值或者假值;逻辑运算符包括逻辑与(&&),逻辑或(||),单目逻辑非(!);优先级和结合性:自左向右的结合性,优先级从高到低依次为:单目逻辑非运算符“!”,逻辑与运算符“&&”,逻辑或运算符“||”。
  • 位逻辑运算符和表达式:位运算符是C语言中比较有特色的内容。位逻辑运算符可以实现位的设置、清零、取反和取补操作。利用位运算可以实现很多汇编语言才能实现的功能。为逻辑运算符包括:位逻辑与“&”,位逻辑或“|”,位逻辑非“^”,取补”~“;在程序中,位逻辑运算符一般被程序员用作开关标志。较低层次的硬件设备驱动程序,经常需要对输入输出设备进行为操作。
  • 逗号运算符和表达式:在c语言中,可以用逗号将多个表达式分隔开来。其中,用逗号分开的表达式分别计算,并且整个表达式的值就是最后一个表达式的值。逗号表达式称为顺序求值运算符,逗号表达式的一般形式是:表达式1,表达式2,表达式3,...,表达式n;逗号表达式的求解思路是:先求表达式1,再求表达式2,已知求解到表达式n。整个逗号表达式的值是表达式n的值。如:Value=2+1,5+3,4+5;若按照上述说法,Value的值应该为9,但是实际上Value的值为3,因为还涉及到一个运算符的优先级问题,赋值运算符优先级大于逗号运算符。但是Value=(2+1,5+3,4+5);的Value的值就是9了。
  • 复合赋值运算符:符合运算符是C原因中独有的,实际这是一种操作的做些形式,可使得变量的操作描述方式更为简洁;如Value+=3;实际就是Value=Value+3;
  • 运算符的优先级表如下:

C语言-表达式和运算符的更多相关文章

  1. JavaScript深入浅出补充——(一)数据类型,表达式和运算符

    项目基本做完,在进行下一阶段学习之前先看视频学习回顾一下JavaScript 一.数据类型 JavaScript中有五种原始类型和一种对象类型 JavaScript弱类型语言中隐式转换 num-0 字 ...

  2. 笔记《JavaScript 权威指南》(第6版) 分条知识点概要3—表达式和运算符

    [表达式和运算符]原始表达式,初始化表达式(对象和数组的),函数定义表达式,属性访问表达式,调用表达式,对象创建表达式,运算符概述,算术表达式,关系表达式,逻辑表达式,赋值表达式,表达式计算,其他运算 ...

  3. Python基础0:变量 赋值 表达式和运算符

    变量: 前面我们在使用print()输出内容的时候,如果内容很长,后面要再次输出的时候,就需重新在输入一遍. 如果给输出的内容起个简单的别名.这样我们用简短的别名来代替长内容,下次要输出的时候就直接使 ...

  4. Javascript权威指南——第二章词法结构,第三章类型、值和变量,第四章表达式和运算符,第五章语句

    第二章 词法结构 一.HTML并不区分大小写(尽管XHTML区分大小写),而javascript区分大小写:在HTML中,这些标签和属性名可以使用大写也可以使用小写,而在javascript中必须小写 ...

  5. Javascript学习2 - Javascript中的表达式和运算符

    原文:Javascript学习2 - Javascript中的表达式和运算符 Javascript中的运算符与C/C++中的运算符相似,但有几处不同的地方,相对于C/C++,也增加了几个不同的运算符, ...

  6. C#图解教程 第八章 表达式和运算符

    表达式和运算符 表达式字面量 整数字面量实数字面量字符字面量字符串字面量 求值顺序 优先级结合性 简单算术运算符求余运算符关系比较运算符和相等比较运算符递增运算符和递减运算符条件逻辑运算符逻辑运算符移 ...

  7. Python3基础-表达式和运算符

    表达式和运算符 什么是表达式? 1+2*3就是一个表达式,这里的加号和乘号叫做运算符,1.2.3叫做操作数. 1+2*3经过计算后得到的结果是7,我们可以将计算结果存放在一个变量里,result=1+ ...

  8. Python --表达式和运算符

    表达式 由一个或者几个数字或者变量和运算符组合成的一行代码 通常会返回一个结果 运算符 由一个以上的值经过变化得到新值的过程就叫做运算 用于运算的符号称为运算符 运算符的分类: 算数运算符 比较或者关 ...

  9. javascript 核心语言笔记 4 - 表达式和运算符

    表达式(expression)是 JavaScript 中的一个短语(phrases),JavaScript 解释器会将其计算(evaluate)出一个结果.程序中的常量.变量名.数组访问等都是表达式 ...

随机推荐

  1. 第14.15节 爬虫实战1:使用Python和selenium实现csdn博文点赞

    写在前面:本文仅供参考学习,请勿用作它途,禁止转载! 在开始学爬虫时,学习了csdn博客专家(id:明天依旧可好 | 柯尊柏)<实战项目二:实现CSDN自动点赞>的文章,文章介绍了通过Py ...

  2. PyQt(Python+Qt)学习随笔:信号签名中的万能Python类型PyQt_PyObject

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 信号在定义时参数如果使用字符串'PyQt_PyObject'表示参数可以是任何Python类型,这通 ...

  3. CODING DevOps 线下沙龙回顾一:DevOps 代码质量实战

    11 月 22 日,由 CODING 主办的 DevOps 技术沙龙系列「质量」专场在上海圆满结束.在活动现场,四位来自腾讯等知名企业的技术大咖们分享了研发质量与效能的实战经验,与观众们共同探讨如何采 ...

  4. win10系统rational rose 安装后打开弹框显示java.lang.ClassNotFoundException 解决方案

    场景复现:安装Rational Rose,按照破解方法完成后,打开程序,会弹出对话框显示java.lang.ClassNotFoundException,在关闭程序时也会弹出一个对话框,并且程序不能关 ...

  5. 学习JUC源码(1)——AQS同步队列(源码分析结合图文理解)

    前言 最近结合书籍<Java并发编程艺术>一直在看AQS的源码,发现AQS核心就是:利用内置的FIFO双向队列结构来实现线程排队获取int变量的同步状态,以此奠定了很多并发包中大部分实现基 ...

  6. swiper4使用教程-填坑

    本篇博客用于记录使用swiper插件中的一些关键点: 首先附上官网地址:https://www.swiper.com.cn/ ios中使用swiper的坑: /*解决swiper中苹果点击变暗,在cs ...

  7. CIBN手机电视8.3.2永久VIP

    一款互联网电视的手机客户端.可以观看最新的电影和电视剧,还会为你推荐人气热门电影,让你不会错过每一部精彩的大片,以去除app内的所有可见广告,解锁VIP特权,无需登录直接使用! 下载地址:https: ...

  8. QQ电话能定位

    QQ电话是网络电话,可以定位吗??? 下面介绍利用wireshark获取QQ好友IP实施精准定位 超详!! Wireshark Wireshark是一个使用WinPcap作为接口,直接与网卡进行数据报 ...

  9. vmvare workstation虚拟机连接外网

    在使用网上的yum源的时候,我们就需要我们的虚拟机能连接外网,在这里记录下配置vmvare workstation虚拟机连接外网的方法. 配置步骤: 1.打开主机的 "网络和Internet ...

  10. windows10 64位下安装oracle 11g和PL/SQL Developer

    一.材料准备: oracle11g安装包(64位) oracle11g客户端(32位) PL\SQL Developer安装包(32位) 1.下载Oracle 11g链接:http://www.ora ...