C语言-算数操作符

本文详细介绍了C语言中的算术运算符,包括整数除法的特性和取模运算,以及位移操作符(左移和右移)的工作原理。此外,还探讨了位操作符,如位或、位与和异或,以及赋值操作符的使用。文中还提到了单目操作符,如逻辑取反和位取反,并解释了三目操作符和逗号表达式的功能。
摘要由CSDN通过智能技术生成
算数操作符

算数运算符 + - * / %

- + * 和数学中是基本一样的
/ 除法就出现的了区别

int a = 10 / 3;//两个整数相除 结果就是整数 如果是10/3.0 那么结果就是浮点数 变量的类型也要注意换成浮点型哦 以及%f
printf("%d",a);
结果:3

%取模 取余操作符 就是在除法之后 最后整除不尽的值取出来
例如:
	int a = 10%3;
	printf("%d",a);
	结果:1


位移操作符 >> <<

位移实际是移动的二进制的位置
int main()
{
	int a = 2;
	 a = a << 2;
	printf("%d",a);
}
结果:
	8
过程:
	2 转换成二进制就是 10 向左边<<移动2位 后面没东西就用0补上  就是 1000
	1000转换成十进制 就是8

在这里插入图片描述

位操作符 | & ^

| 位或操作符 也是二进制的对比 进行的或运算
10|3 
实际是下面这种对比 两个都为0的时候才为0
1010
0011
------
1011  也就是11

& 位与操作符 也是二进制的对比 进行与的运算
10&3
实际是下面这种对比 两个都为1的时候才为1
1010
0011
------
0010 也就是2

^  异或  两个一样就为0  不一样就为1
10^3
----
1010
0011
------
1001 结果 9
 

赋值操作符

	=	+=	-=	*=	/=	 %= ^=	|=	>>=	<<=
=是赋值操作符 就是把右边的值 赋给左边的变量
+= 就是左边的值加上右边的值 然后赋值给左边例如 
int a = 10;
a += 12; 就相当于 a = a +12; 后面的-+ *=…都是一个意思


单目操作符

!	//逻辑取反
-	//负号
+  //正号
&	//取地址符 可以取内存地址
sizeof  //注意 sizefo是操作符 在使用的时候可以不加括号
~	一个数的二进制位取反
-- //减减 
++ //加加  前++ 后++之前有说过 --也是一样的
*	间接访问操作符	(解引用)
通过一个指针访问它所指向的地址这个过程叫做间接访问(indirection)或者解引用指针(dereferencing the pointer)。

~ 位取反需要单独拉出来讲一下 原码 反码 补码参考:
https://blog.csdn.net/weixin_44537835/article/details/121177713

逻辑操作符

&& 逻辑与
 || 逻辑或
&& 就是左右两边的表达式 都为true才为true
|| 就是左右两边只要有一边是true 就为true
if(2>1 && 1<3){
	printf("v");//这个就是可以正确输出的 因为两个都为True
}

if(2>1 || 1>3){
	printf("v");//这个就是可以正确输出的 只要有一个是True就足够了
}

三目操作符

exp?exp1:exp2;
如果exp成立为True 那么就执行exp1 否则就执行exp2
	1 > 1 ? printf("1"):printf("0");
	结果 0

逗号表达式
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值