IOT嵌入式物联网----运算符,表达式和语句-创新互联
零 ---- 千里之行,始于足下
目前创新互联公司已为成百上千家的企业提供了网站建设、域名、虚拟空间、网站托管维护、企业网站设计、虹口网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。壹 ---- 嵌入式C语言编程
一、运算符、表达式和语句的概念 运算符是一种告诉编译器执行特定的数学或逻辑操作 的符号, C 语言内置了丰富的运算符,并提供 了多种类型的运算符。 表达式就是通过 运算符 将 运算对象 (操作数)连接起来的式子。
由表达式组成的语句称为表达式语句。它由一个表达式后接一个分号“;”组成。
二、运算符 (一)运算符类型根据运算符的作用,主要分为以下几种类型:
运算符也叫做操作符,根据运算符操作的运算对象的个数,可以将运算符分为以下几种:
----单目运算符:只需要一个操作数
----双目运算符:需要两个操作数
----三目运算符:需要三个操作数
(二)运算符的优先级运算符的优先级一般按照如下规律:
! >算术运算符 >关系运算符 >&& >|| >条件运算符 >赋值运算符 >逗号运算符
具体可参照下表
(三)算术运算符C语言内置的算术运算符有如下几种:
---- % 取模运算符的两个操作数只能作为整数
---- 前自增/前自减先计算后使用,后自增/后自减先使用后计算
(四)赋值运算符C语言内置赋值运算符有如下几种:
---- 在C语言中,“ = ” 不是相等的意思,而是将右值赋给左值。赋值表达式的语句的目的是把值存储到内存上。用于存储值的数据存储区域统称为数据对象。 “左值"指用于标识一个特定的数据对象的名字或表达式。"右值"指的是能赋给可修改的左值的量。
---- 左值具有三个特性: 1. 可修改性,又称为可修改左值 2. 是数据对象的标识符,应具有标识符的特性 3. 左值不能为常量 (五)关系运算符C语言内置关系运算符有如下几种:
关系运算符用于比较两个数值中间的关系,所以也叫做比较运算符。
另外,需要特别注意 “=” 和 “==” 的区别!通常在刚接触代码的时候,会经常判断错误,将“=”误以为是“==”
(六)逻辑运算符为什么在关系运算符里面,结果只有0和1呢?而且成立则是1,不成立是0。原来,在计算机中,通过两个逻辑来表达数值之间的关系的,分别是逻辑真和逻辑假,逻辑真则表示关系是成立的,逻辑假则表示关系不成立。
逻辑假是用0来表示的,而逻辑真是使用非0来表示。在这里,初学者容易掉入一个坑,我们需要记住,1 是“真”,但是“真”不仅仅是1!
C语言内置逻辑运算符有如下几种:
在实际的生活当中,我们经常会用区间表示范围,例如,我们经常将学生成绩大于等于60且小于70的值判定为良好,在书写时是使用“60<=x<70”来表示。
但是通过我们上面学习的运算符优先级和关系运算符,大家可以猜猜上面的判断结果答案有多少个呢?
(1)第一步:我们先计算 60<=x表达式的结果,很显然不论x的值为多少答案都只有两个,分别是0或者1
(2)第二步:用0或者1和70比较大小,很显然结果为1!
也就是说,无论x的值是多少,60<=x<70的答案都是成立的!因此,在我们进行范围判断的时候,需要使用逻辑运算符来连接两个范围,例如:60<=x && x<70 (七)位运算符 在软件开发过程中,常常需要处理二进制位的问题,例如: ---- 通过单片机、STM32等控制灯光、风扇等 ---- 通过子网掩码求IP地址的网络号 ---- 通过异或对数据进行加密 ---- 通过位运算判断数据的奇偶性(x & 1) C 语言内置的位运算符有:---- 左移n位等于乘以2的n次方
---- 右移n位等于除以2的n次方
思考
1、是不是只要是左移就能够实现乘以2的倍数呢?数据是否会产生溢出?
2、如何不使用中间变量交换两个整型变量的值?可以用“+”和“-”实现吗?可以用“^”实现吗?
你是否还在寻找稳定的海外服务器提供商?创新互联www.cdcxhl.cn海外机房具备T级流量清洗系统配攻击溯源,准确流量调度确保服务器高可用性,企业级服务器适合批量采购,新人活动首月15元起,快前往官网查看详情吧
文章名称:IOT嵌入式物联网----运算符,表达式和语句-创新互联
标题链接:http://myzitong.com/article/cssegc.html