003-C运算符
运算符
C语言有34种运算符,常见的有加减乘除。
1>算术运算符
1、加
10+2
2、减
20-2
3、乘
12*2
4、除
10/2
5、取余
10%3 = 1;
10%-3 = 1;
-10%3 = -1;
-10%-3 = -1;
取余结果只和左边的数值相关,和右边数值无关。
注意:类型转换
自动类型转换
int a = 10.99;//a为10,会弹出警告信息
强制类型转换
int a = (int)10.99;//这个也是10,没有警告信息
自动类型提升
doble d = 10.99 + 6;//运算时会将6转换为double型进行运算
赋值运算 =
int a = 10;//=就是赋值运算符
等号左边不能是常量。
复合赋值运算符 +=,-+,*=,/=,%=
int a =10;
a +=10;//相当于a = a +10;
a *=20;//相当于a = a * 20;
a+= 2+2+10;// a+= (2+2+10);右边默认当作一个整体
自增自减运算符 -- ++
int a=10;
int b;
b = a++;//先使用a然后自增,故b为10,a变为11
b = ++a;//先自增再使用a,故a先变为12,b为12
sizeof运算符
计算变量所在内存字节数
int a =10;
int size = sizeof(a); // sizeof a;也可以这样写
printf("%d",size);
关系运算
1、条件判断
判断条件是否成立,成立为真,不成立为假。
任何非0值都为真,只有0为假。任何数值都有真假性。
2、关系比较
>,<,>=,<= ,==,!=
条件成立返回1,不成立返回0.
注意:优先级
[<,<=,>,>=] > [!=,==],运算从左到右
int a = 10>9+1;// 0 , + 的优先级比 > 高,所以先计算加法运算,然后比较,最后赋值
逻辑运算符
与&&,或||,非!
1、逻辑与 &&
条件1 && 条件2;//同时成立返回1,否则返回0
只有条件1成立才会执行条件2
2、逻辑或 ||
条件1 || 条件2;//只要有一个成立就返回1,都不成立返回0
只要条件1成立,条件2就不会执行
3、逻辑非 !
!条件1;//取反
int a = !!10;//可以连续使用
三目运算符 条件?数值2:数值3;
如果条件成立,就返回数值2,否则返回数值3.
int a = 10>8?10:8;
未完待续......
003-C运算符的更多相关文章
- 003 python 注释/数据类型/运算符/输入输出/格式化输出
集成开发环境 pycharm 工欲善其事,必先利其器 pycharm是具备一般的python ide的功能,同时呢支持调试,语法高亮,代码管理,智能提示 加快快发的速度,提高开发效率 注释 what ...
- [python学习手册-笔记]003.数值类型
003.数值类型 ❝ 本系列文章是我个人学习<python学习手册(第五版)>的学习笔记,其中大部分内容为该书的总结和个人理解,小部分内容为相关知识点的扩展. 非商业用途转载请注明作者和出 ...
- [003] - JavaSE面试题(三):JavaSE语法(1)
第一期:Java面试 - 100题,梳理各大网站优秀面试题.大家可以跟着我一起来刷刷Java理论知识 [003] - JavaSE面试题(三):JavaSE语法(1) 第1问:& 和 & ...
- shell运算符
原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr,expr 最常用. expr 是一款表达式计算工具,使用它能完成表达式的求值操作. #!/bin/bash v ...
- SQL Server-聚焦APPLY运算符(二十七)
前言 其实有些新的特性在SQL Server早就已经出现过,但是若非系统的去学习数据库你会发现在实际项目中别人的SQL其实是比较复杂的,其实利用新的SQL Server语法会更加方便和简洁,从本节开始 ...
- java中的移位运算符:<<,>>,>>>总结
java中有三种移位运算符 << : 左移运算符,num << 1,相当于num乘以2 >> : 右移运算符,num >& ...
- 我的MYSQL学习心得(五) 运算符
我的MYSQL学习心得(五) 运算符 我的MYSQL学习心得(一) 简单语法 我的MYSQL学习心得(二) 数据类型宽度 我的MYSQL学习心得(三) 查看字段长度 我的MYSQL学习心得(四) 数据 ...
- .NET 基础 一步步 一幕幕[运算符、占位符、转义符]
运算符.占位符.转义符 好吧,在五局全胜之后,终于升到了三个钻,距离一个星星还有一大段距离,忽然想起来今天的博客还没写,果断坑队友,来写博客了....感觉以后还是每天更新一篇比较好.要不晚上就该熬 ...
- ECMASCript2015 提案 stage-3的对象展开运算符
看源码时看到如下的代码 export default { //通过mapActions将actions映射到methods里 methods: { ...mapActions([ 'updateSta ...
- JavaScript权威设计--JavaScript表达式与运算符,语句(简要学习笔记六)
1.delete是一元操作符,用来删除对象属性或者元素. var a={ x:1, y:2 } delete a.x; //删除x属性 “x”in a //false:a对象中已经不存在x属性 ale ...
随机推荐
- 使用sqoop工具从oracle导入数据
sqoop工具是hadoop下连接关系型数据库和Hadoop的桥梁,支持关系型数据库和hive.hdfs,hbase之间数据的相互导入,可以使用全表导入和增量导入 从RDBMS中抽取出的数据可以被Ma ...
- Merge Two Sorted Lists—LeetCode
Merge two sorted linked lists and return it as a new list. The new list should be made by splicing t ...
- Selenium webdriver 查找元素
1.简单查找 By ID: WebElement element=driver.findElement(By.id("userId")); By Name:WebElement e ...
- Dockerfile制作sshd镜像
For Centos Shell脚本: # vim Dockerfile # mkdir /data01/sshd # vi Dockerfile # sshd # # VERSION 0.0.2 F ...
- redis: 6379端口下set值时出现 CLUSTERDOWN The cluster is down
1.使用./redis-trib.rb check 192.168.242.134:6379检查出现图中的错误 2.在redis安装目录的bin下执行下列命令去cluster meet 另一个端口为7 ...
- ActionScript通用开发框架
ActionScript 3(简称as)自2006年诞生以来,出现了一大批很优秀框架.就我的知识领域,运用包括pureMVC.pushButton Engine(组件框架).Robotlegs.Ash ...
- Android应用程序安装与Launcher启动机制
以下资料摘录整理自老罗的Android之旅博客,是对老罗的博客关于Android底层原理的一个抽象的知识概括总结(如有错误欢迎指出)(侵删):http://blog.csdn.net/luoshe ...
- Linux network setting.
Lubuntu network setting. //1. Vi /etc/network/interfaces Add:auto eth0iface eth0 inet dhcp //2. Vi / ...
- TCP Linger的坑
昨天和同事奋战几个小时,解决了一个linger造成的bug. 现象是这样的,这是一个我从原型接手,扩充了各种功能成为可用代码的epoll实现的非阻塞socket server程序,接收大量的短连接,测 ...
- (转)HTML特殊字符
HTML 原始码 显示结果 描述 < < 小於号或显示标记 > > 大於号或显示标记 & & 可用於显示其它特殊字符 " " 引号 ® ® ...