C语言:操作符详解(1)

1、操作符详解

C语言的操作符分为以下10种:

1.1算数操作符

 1.+ - * / 操作符可以作用于整数和浮点数;

2.%操作符只能用于两个整数之间,返回的是整除之后的余数;

3./ 操作符则是根据两操作数类型进行除法,如两个操作数是整型,执行整数除法,如果两数为浮

点型,则执行浮点数除法。

例:

#include <stdio.h>
int main()
{
	int a = 5 / 2;
	printf("a=%d\n", a);
	return 0;
}

 结果:

#include <stdio.h>
int main()
{
	double a = 5/ 2.0;
	printf("a=%lf\n", a);
	return 0;
}

 结果:

int main()
{
	int a = 5% 2;
	printf("a=%d\n", a);
	return 0;
}

结果

1.2移位操作符

<< 左移操作符          >> 右移操作符

1.2.1右移操作符:

1.2.1.1算数右移:左边用原该值的符号位填充,右边丢弃

int main()
{
	int a = -1;
	//>>右移操作符,移动的是二进制
	int b = a >> 1;
	printf("%d\n", b);
	return 0;
}

结果

1.2.1.2逻辑右移:右边丢弃,左边补0

1.2.2左移操作符

左边抛弃、右边补0

int main()
{
	int a = 5;
	int b = a << 1;
	printf("%d\n", b);
	return 0;
}

逻辑

1.3位操作符

&:按位与(有0为0)

int main()
{
	//&-按2进制位与
	int a = 3;//000000000000000000000000011
	int b = 5;//000000000000000000000000101
	///000000000000000000000000001
	int c = a & b;
	printf("%d\n", c);
	return 0;
}

结果:

| :按位或(有1为1)

int main()
{
	//|-按2进制位或
	int a = 3;//000000000000000000000000011
	int b = 5;//000000000000000000000000101
	///000000000000000000000000111
	int c = a | b;
	printf("%d\n", c);
	return 0;
}

结果

^:按位异或(相同为0,不同为1)

int main()
{
	//^-按2进制位异或
	int a = 3;//000000000000000000000000011
	int b = 5;//000000000000000000000000101
	///000000000000000000000000110
	int c = a^b;
	printf("%d\n", c);
	return 0;
}

结果:

1.4、赋值操作符

可将未定义变量进行赋值,也可以将之前的改掉。

int x = 0;
x = 20;

复合操作符:

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

1.5单目操作符

!              逻辑反操作
-              负值
+              正值
&              取地址
sizeof          操作数的类型长度(以字节为单位)
~              对一个数的二进制按位取反
--              前置、后置--
++              前置、后置++
*              间接访问操作符(解引用操作符)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Hello xiǎo lěi

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值