初识C之五花八门的操作符1

Posted zsQgqdsd1002

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初识C之五花八门的操作符1相关的知识,希望对你有一定的参考价值。

操作符1


前言

在C语言中,有很多语句有着特殊的功能以及作用,那么有一些符号也一样和语句一样起着重要的作用,我们把这些有作用的符号叫做操作符,今天就让我们一起来认识一下C语言中的一些操作符。


一、操作符?

操作符(也叫运算符)——它们是一些表示特定的数学或逻辑操作的符号。操作符的种类繁多,大体可以分为11类:

名称符号
算术操作符+ - * % /
移位操作符<< >>
位操作符& l ^
赋值操作符=
单目操作符! - + & sizeof ~ – ++ * (强传类型)
关系操作符> >= < <= != ==
逻辑操作符&& ll
条件操作符exp1 ? exp2 : exp3
逗号表达式exp1,exp2,exp3,…expN
下标引用操作符[ ]

今天我们来介绍一下前四种操作符以及其作用

二、初窥门径

1.算术操作符

					+ 	—	*	/	%

+为加法操作符
-为减法操作符
*为乘法操作符
/为除法操作符
%为取余数操作符
这些代表了数学里的加减乘除在计算机里的实现
值得一提的是 %只可以应用在整形变量之间的运算,不能用来运算浮点数,它的返回值是整除之后剩下的余数


2.移位操作符

						<<		>>						

<< 为左移操作符
a >> b的意思就是把a向左移b位

我们假设一个二进制数为0000 0001,那么a << 1操作得到的就是0000 0010,一言以蔽之就是左边不要了,右边补个0

>>是右移操作符
a >> b的意思就是把a向右移b位

右移操作符在对数据进行操作时需要注意,右移操作符不同与左移操作符的地方在于右移操作符是不要右边了,但是左边需要补的不一定是0,而是根据数据的类型来补充符号位,正数补0,负数则需要补1

在使用移位操作符的时候切记不能移动负数位,那样的结果是未定义的,也就是说什么结果都可能有


3.位操作符

						&	|	^

我们知道数据在计算机中的存储都是二进制的,位操作符就是建立在这个基础之上的:

&代表按位与
比较两个数的所有二进制数位,相同则为1,不同则为0

|代表按位或
两个数字的对应位都是0才为0,否则就为1

^代表按位异或
两个数字的对应位不同则为1.否则为0

需要注意的是,位操作符只能应用于整数


4.赋值操作符

							=

赋值操作符就是=,它的作用是对一个数据进行重新赋值,比如说:

#include<stdio.h>
int main()

	int a = 10;
	a = 20;
	printf("%d", a);
	return 0;

可以看到我们用到了两次赋值操作符,第一次把10这个值赋给了变量a,在后面又把20这个值赋给了变量a,程序的输出结果也一定是20

但是赋值操作符可不止这一种用法,其衍生出了很多其他意义的赋值操作符,也就是我们下面要说的符合赋值操作符:

		+=	-=	*=	/=	%=	<<=	>>=	&=	|=	^=

+=
a += b就代表的是a = a + b;

-=
a -= b就代表的是a = a - b;

*=
a *= b就代表的是a = a * b;

/=
a /= b就代表的是a = a / b;

%=
a %= b就代表的是a = a % b;

<<=
a <<= b就代表的是a = a << b;

>>=
a >>= b就代表的是a = a >> b;

&=
a &= b就代表的是a = a & b;

|=
a |= b就代表的是a = a | b;

^=
a ^= b就代表的是a = a ^ b;

都是非常的通俗易懂,在这我们就不多赘述了


总结

以上就是本次我对四种操作符的认识与介绍,希望可以给大家带来帮助,如果有错误的或者可以改正的地方,欢迎大佬联系我。

以上是关于初识C之五花八门的操作符1的主要内容,如果未能解决你的问题,请参考以下文章

初识C之五花八门的操作符2

初识C之五花八门的操作符2

初识Scrapy之再续火影情缘

初识C语言之二

初识C语言之二

初识C语言之二