C语言-表达式和运算符
- 表达式:表达式是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语言-表达式和运算符的更多相关文章
- JavaScript深入浅出补充——(一)数据类型,表达式和运算符
项目基本做完,在进行下一阶段学习之前先看视频学习回顾一下JavaScript 一.数据类型 JavaScript中有五种原始类型和一种对象类型 JavaScript弱类型语言中隐式转换 num-0 字 ...
- 笔记《JavaScript 权威指南》(第6版) 分条知识点概要3—表达式和运算符
[表达式和运算符]原始表达式,初始化表达式(对象和数组的),函数定义表达式,属性访问表达式,调用表达式,对象创建表达式,运算符概述,算术表达式,关系表达式,逻辑表达式,赋值表达式,表达式计算,其他运算 ...
- Python基础0:变量 赋值 表达式和运算符
变量: 前面我们在使用print()输出内容的时候,如果内容很长,后面要再次输出的时候,就需重新在输入一遍. 如果给输出的内容起个简单的别名.这样我们用简短的别名来代替长内容,下次要输出的时候就直接使 ...
- Javascript权威指南——第二章词法结构,第三章类型、值和变量,第四章表达式和运算符,第五章语句
第二章 词法结构 一.HTML并不区分大小写(尽管XHTML区分大小写),而javascript区分大小写:在HTML中,这些标签和属性名可以使用大写也可以使用小写,而在javascript中必须小写 ...
- Javascript学习2 - Javascript中的表达式和运算符
原文:Javascript学习2 - Javascript中的表达式和运算符 Javascript中的运算符与C/C++中的运算符相似,但有几处不同的地方,相对于C/C++,也增加了几个不同的运算符, ...
- C#图解教程 第八章 表达式和运算符
表达式和运算符 表达式字面量 整数字面量实数字面量字符字面量字符串字面量 求值顺序 优先级结合性 简单算术运算符求余运算符关系比较运算符和相等比较运算符递增运算符和递减运算符条件逻辑运算符逻辑运算符移 ...
- Python3基础-表达式和运算符
表达式和运算符 什么是表达式? 1+2*3就是一个表达式,这里的加号和乘号叫做运算符,1.2.3叫做操作数. 1+2*3经过计算后得到的结果是7,我们可以将计算结果存放在一个变量里,result=1+ ...
- Python --表达式和运算符
表达式 由一个或者几个数字或者变量和运算符组合成的一行代码 通常会返回一个结果 运算符 由一个以上的值经过变化得到新值的过程就叫做运算 用于运算的符号称为运算符 运算符的分类: 算数运算符 比较或者关 ...
- javascript 核心语言笔记 4 - 表达式和运算符
表达式(expression)是 JavaScript 中的一个短语(phrases),JavaScript 解释器会将其计算(evaluate)出一个结果.程序中的常量.变量名.数组访问等都是表达式 ...
随机推荐
- 第三十八章、PyQt输入部件:QKeySequenceEdit快捷键输入部件使用案例
专栏:Python基础教程目录 专栏:使用PyQt开发图形界面Python应用 专栏:PyQt入门学习 老猿Python博文目录 老猿学5G博文目录 一.功能简介 Key Sequence Edit输 ...
- PyQt(Python+Qt)学习随笔:QTreeWidgetItem项的子项排序sortChildren及获取项对应的树型部件对象方法
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 1.sortChildren对子项排序 树型部件QTreeWidget中的QTreeWidgetIt ...
- GPU相关资料汇总
qemu, quick emulator systemc xilinx qemu nvdla, nvidia deep learning accelerator gpgpu-sim ffgpu ope ...
- 数据库查询优化-20条必备sql优化技巧
0.序言 本文我们来谈谈项目中常用的 20 条 MySQL 优化方法,效率至少提高 3倍! 具体如下: 1.使⽤ EXPLAIN 分析 SQL 语句是否合理 使⽤ EXPLAIN 判断 SQL 语句是 ...
- APIO2012 苦无 Kunai
这题网上貌似还没有完整的题解呢,我来口胡一下~ Description \(W \times H\) 的二维坐标系,\(W, H \le 10^9\) 给 \(n (n \le 10^5)\) 个点 ...
- 函数动态参数 *args **kwargs
def f1(*args,**kwargs): print(args,type(args)) print(kwargs,type(kwargs))li = [11,22,33]dic = {'k1': ...
- 从零开始学生信-orthofinder的安装和使用-基因家族分析
[环境变量]注释掉conda3,source ~/.bashrc conda install orthofinder # 若在上一章之后没有重启的同学请重启后操作. # 由于是刚开始搭建,这里没有给o ...
- 移动端H5微信分享
移动端H5微信分享功能,可以使项目更好地传播. 微信官方教程文档: 微信JS-SDK说明文档 步骤一:绑定域名 先登录微信公众平台进入"公众号设置"的"功能设置&quo ...
- Anno 让微服务、混合编程更简单(Net love Java)
在社区或者QQ群我们经常看到有人争辩编程语言的好坏,只要一提起这个话题常常就能引来很多人参与,往往最后就变成了一群人几个小时的骂战.今天我们要说的是如何让Java和.Net(甚至更多语言)相结合.充分 ...
- css3选择器归类整理---基本选择器和属性选择器
css3选择器分类 CSS3选择器分类如下图所示 选择器的语法 1.基本选择器 类型 代码 功能描述 通配选择器 *{ margin: 0; padding: 0; border: none; } 选 ...