C语言中的运算符
1. 在C语言中运算符包括:算术运算符、关系运算符、赋值运算符、逻辑运算符
2.用运算符把变量、常量连接起来的式子就是表达式
3.我们阅读一个表达式,从表达式的功能和表达式的值来看
4. 算术运算符和表达式
4.1 运算符包括:+ - * / %
4.2 一个整数和另外一个整数相除,结果是一个整数, 4/6 == 0, 6/4 == 1
4.3 求余操作%,余数的符号和被除数的符号一致 -6 % 4 == -2
4.4 数据类型较短的操作数和较长的操作数进行运算时,首先转换为较长的类型,再参加运算。整数和小数进行运算时,先把整数转换为小数再运算。如:
int i = 10;
long j = 20;
表达式 i + j , 运算前把i的类型先转换为long,然后再和j进行相加
float f = 12.34;
表达式 i + f , 运算前先把i的类型转换为float,再参加运算。
4.5 对于算术表达式来说,整个表达式的类型就是这个表达式中最长的数据类型
i + j 这个表达式 的类型是 long
i + f 这个表达式的类型是float
5. 自增和自减
i ++ 相当于 i = i+1
i--相当于i = i-1
自增和自减 的后缀形式 i++和i—,i++和i--表达式的值是变量i的值,后缀方式是先使用,后自增或自减; ++i和--i是前缀形式,前缀形式的表达式的值,是先自增或自减之后 的值
int i = 10;
int j = i++; // j == 10, i== 11
int k = ++i; // i == 12,k == 12,
6. 赋值表达式
int i = 10;
int j;
j = i 这就是一个赋值表达式,把赋值号(=)右边表达式 的值,赋值给左边的变量
赋值号左边的一定是一个变量,赋值表达式的值就是左边变量的值。
7. 关系表达式
7.1 关系运算符包括: > , >= , < , <= , == , != , <>
7.2 两个操作数进行比较,结果要么是真,要么是假
7.3 关系表达式常常和后面要学的 if语句 , 循环语句结合使用,作为一个条件存在
7.4 需要注意的是,在C语言中,用0表示假,非0数都是真
7.5 注意,如果表达式成立,会输出1, 表达式不成立,会输出0
7.6 如果有三个变量 a, b, c,求三个变量的最大者,这个条件应该这样写:
if( a>b && a > c ){
printf("最大数是%d\n", a );
}
if( b>c && b>a ){
printf("最大数是%d\n", b );
}
if( c>b && c>a ){
printf("最大数是%d\n", c );
}
8.逻辑表达式
8.1 逻辑运算符包括 && || !
8.2 表达式1 && 表达式2,当表达式1为假时,不再计算表达式2
8.3 表达式1 || 表达式2,当表达式1为真时,不再计算表达式2
9. 三目运算符 ?:
条件?表达式1 :表达式2
如果条件成立,返回表达式1的值,条件不成立,返回表达式2的值
10. 位移运算
向左位移<< 和 向右位移 >>
向左位移就相当于原来的数乘以2, 向右位移相当于除以2
11 位运算
按位与 &, 按位或|, 按位取反~, 按位异或^
需要把这个数转换为二进制之后 再按位进行操作
异或的值,只有当两个相应的位不一致的时候,结果为1
12 强制类型转换
(类型) 表达式
13 了解运算符的优先级
C语言中的运算符的更多相关文章
- c语言中逗号运算符和逗号表达式
原文:c语言中逗号运算符和逗号表达式 C语言提供一种特殊的运算符——逗号运算符.用它将两个表达式连接起来.如: 3+5,6+8称为逗号表达式,又称为“顺序求值运算符”.逗号表达式的一般形式为 表达式1 ...
- Go语言中的运算符
## 1 概述Go语言提供了,算术,关系,逻辑,位,指针,赋值运算符.本篇整体说明一下. ## 2 算术运算 * \+ 相加* \- 相减* \* 相乘* / 相除* % 求余* ++ 自增* \-\ ...
- C语言中关于运算符优先级别
在一一个表达式中可能有多个不同的运算符结合起来,由于运算符的优先级别不一样,可能会形成得到的结果不同. 优先级从上到下依次递减,最上面具有最高的优先级,逗号操作符具有最低的优先级. 对于相同的优先级, ...
- go语言中的运算符^,&
一.^运算符 1.作为二元运算符 ^作二元运算符就是异或,包括符号位在内,相同为0,不相同为1 规则:1^1 =0, 0^0=0,1^0=1,0^1=1 事例: (1)0001 0100 ^ 0000 ...
- python语言中的运算符
基本运算符 1.比较运算符 # >,< ,>= ,<=, ==(比较值) ,!=(不等号) 2.逻辑运算符 and or not(取反) 3.算术运算 / ...
- C语言中位运算符异或“∧”的作用
异或运算符∧也称XOR运算符.它的规则是若参加运算的两个二进位同号,则结果为0(假):异号则为1(真).即0∧=,∧=,∧=.如: 即071∧,结果为023(八进制数). “异或”的意思是判断两个相应 ...
- JAVA语言中的运算符和表达式
JAVA——运算符 按运算符要求的运算符个数可分为一元.二元.三元运算符: 一元运算符有一个操作数:如正数或者负数前面的“+”.“—”,和自增“++”.自减“- -”. 二元运算符有两个操作数:如除法 ...
- go语言中运算符
Go语言学习笔记(运算符)-day01 go语言中与其他语言一样,存在多种运算符,下表列出了go语言中的运算符类型 算数运算符 关系运算符 逻辑运算符 位运算符 赋值运算符 算数运算符 运算符 描述 ...
- c语言 &取地址运算符的理解
对于c语言中的&运算符,百度百科是这样定义的:(&p)则是这样一种运算,返回当时声明p 时开辟的地址:但是根据我对代码的观察,我觉得&运算符不只是返回地址的功能: 例如: in ...
随机推荐
- React Native版本升级的正确姿势
基于React Native(简称:RN)的APP也发布了三个版本了,RN由于两周就会发布一版从最开始项目用的0.29到最近的0.37,做为一个开源项目来说更新真是跟坐火箭般快速,当然对于我们使用的人 ...
- Spring @Transactional propagation 各个属性值的含义
REQUIRED:业务方法需要在一个容器里运行.如果方法运行时,已经处在一个事务中,那么加入到这个事务,否则自己新建一个新的事务. NOT_SUPPORTED:声明方法不需要事务.如果方法没有关联到一 ...
- asp.net判断FileUpload选择的文件是否是图片
假如keleyi.aspx页面中有一个ID为fuHovertree的FileUpload控件,那么C#代码怎么判断fuHovertree选择的文件是否是图片呢? 代码如下: HttpPostedFil ...
- QTableWidget 使用及美化_QtableWidget_QtableView滚动条宽度及样式
//创建及属性设置m_tableWidget = new QTableWidget(this);m_tableWidget->setRowCount(10);m_tableWidget-&g ...
- ListActivity的CheckBox点击事件
在一个ListActivity中,可能有很多行,如何在某个动作(如点击某个按钮)时判断哪些行的CheckBox被选中了,哪些行的CheckBox没有被选中,这是一个需要解决的问题. 首先,需要让Bas ...
- 【Java每日一题】20161111
package Nov2016; import java.io.Serializable; public class Ques1111 implements Serializable{ private ...
- Centos压缩与打包
这个虽然是基础知识,但是有些东西就是这样,久了没用,就会忘记,而且之前有一个坏习惯就是不喜欢做笔记,以后学习了行东西一定要记录在博客,这样以后自己也能时不时的查看一下. 言归正传,在计算机的世界中,数 ...
- PMP47个过程的ITO
- Visual C++中的一些编程小技巧
在应用程序的任意地方实现窗体的最大化.最小化.正常窗口等功能 // 设置Windows窗体的状态void CMinWindowsDlg::SetWindowState(int nWindowSize) ...
- Atitit.atiRI 与 远程调用的理论and 设计
Atitit.atiRI 与 远程调用的理论and 设计 1. 怎么做到透明化远程服务调用?1 2. 2 怎么对消息进行编码和解码1 2.1. 确定消息数据结构dsl1 2.1.1. 消息里为什 ...