--运算符归纳:
在编程中我们总要有些数据需要处理,C语言提供了大量的操作。可以进行算术计算、比较值的大小、修改变量、逻辑地组合关系等等。
在下面为大家用一个表格归纳常用的运算符: 
--基本运算符:
赋值运算符:= 符号=不表示“相等”,而是一个赋值运算符。 i=2000;//语句将数值2000赋给名字i 符号=的左边是一个变量名,右边是赋给该变量的值。符号=被称为赋值运算符。要注意不要把“i=2000;”这个语句读作“i等于2000”,请一定务必读作“把数值2000赋值给变量i” i=i+1;//给一个有限数加1 上边的语句在数学上是没有任何意义的。但是作为计算机赋值语句,它却是很合理的。它意味着“找到名字为i的变量的值,对那个值加1,然后将这个新的赋值给名字为i的变量” 加法运算符:+ 加法运算符是使得在“+”两侧的值被加到一起,例如 i=i+1;//给一个有限数加1 减法运算符:- 减法运算符从它前面的数减去它后面的数,例如 i=i-1;//给一个有限数减1 符号运算符:- 符号运算符就是数学里边的“—”负号。
a=-2;//把-2赋值给变量a 乘法运算符:* 乘法由符号*表示。语句: a=2*a; 除法运算符:/ C语言使用符号/来表示除法。“/”左边的数值被它右边的数值除。例如 a=a/12; 但是这里需要注意的是:整数型数值除法运算和浮点型数值除法运算有很大的不同。浮点型数值除法运算会得出一个浮点型的结果。那么自然啦,整数型数值除法运算会得出一个整数型的整数结果。整数型不能有小数部分,这使得5除以3很让人头疼,因为结果有小数部分。那咋办呢?整数除法结果的小数部分都被丢弃,这个过程被称为“截尾”。 取模运算符:%
取模运算符用于整数运算。该运算符计算出用它右边的整数去除它左边整数得到的余数。不要以为这个运算符是只供数学家使用的深奥工具,它是实际上我们非常常用常见的用途帮助你控制程序的流程。加入你存入一串字符串,但你只能按照要求每8个字节存一次,对存入的字符数进行除以8的取模(num%8)操作并检验结果是不是0。 增量和减量运算符:++、—— 增量运算符完成简单的任务,即将其操作数的值增加1.这个运算符以两种方式出现。 在第一种方式中,++出现在它作用的变量的前面,这是前缀模式。 a=++a;//前缀:使用a的值之后改变a 在第二种方式中,++出现在它的作用的变量后面,这是后缀模式。 a=a++;//后缀:使用b的值之前改变a 当然,之前我在不太熟练的情况下也使用下面不太精致的形式: a=a+1; 但是,这个程序给别人看的时候,没有人会相信你是一个熟练的C程序员。
--基本位运算:
位运算: 在嵌入式的应用中,需要与各种字节、字双字,也就是以8位、16位、32位长为单位的寄存器打交道。 位移运算:<<、>> <<在每次左移操作时,高位被舍,称之为溢出,低位被自动补入0。每次左移高位都会溢出,只是不关心0溢出,而在意1的溢出。 >>在每次右移操作时,高位自动补0,低位被舍弃。 左移一位相当于该数被乘以2,左移n位相当于该数乘以2的n次方。右移一位相当于该数除以2,右移n位,相当于该数除以2的n次方。 按位与运算:& 参与按位与运算(&)的两个运算数,从低位开始,对齐每一位,逐位进行与操作运算只有当对应位上的数据都为1时,该位的结果为1,否则为0。 按位或运算:| 参与按位或运算(|)的两个运算数,从低位开始,对齐每一位,逐位进行与操作运算,当对应位的数据有一个数据位1时,该结果为1,只有都为0时才为0。
以下是本系列教程文章列表:欢迎大家踊跃讨论,有问题可在51黑论坛回帖提出.
C语言基础教程(1):http://www.51hei.com/bbs/dpj-41177-1.html C语言教程(2)-关键字 变量:http://www.51hei.com/bbs/dpj-41178-1.html C语言教程(3)-控制语句:http://www.51hei.com/bbs/dpj-41179-1.html C语言教程(4)-运算符:http://www.51hei.com/bbs/dpj-41180-1.html C语言教程(5)-函数:http://www.51hei.com/bbs/dpj-41181-1.html C语言教程(6)-数组与函数指针:http://www.51hei.com/bbs/dpj-41182-1.html
51单片机教程:http://www.51hei.com/bbs/mcu-xuexi-1.html STM32教程:http://www.51hei.com/bbs/dpj-41167-1.html
|