C语言之操作符

算术操作符:

+(加)       -(减)        *(乘)         /(除)              %(取模,取余数)

以下代码讲下除以和取模:

#include<stdio.h>
int main()
{
	int a = 5 / 2; //除以=商,结果2
	int b = 5 % 2;//取模得到的是余数,1
	printf("%d\n", a);
	printf("%d\n", b);
	return 0;
}

位移操作符:

>> (右移)         <<(左移)

移位操作符取得是2进制位,代码如下:

#include<stdio.h>
int main()
{
	//移(2进制)位操作符
	//<<左移操作符  >>右移位操作符
	int a = 1;
	//整型1占4个字节=32bit 位
	//1的2进制序列是怎么表达的  01
	//00000000 00000000 00000000 00000001
	int b=a << 1;//a向左移1 
	//00000000 00000000 00000000 00000010(左边丢弃,右边补0)
	printf("%d\n", b);            //变成了10, 10这个2进制序列如果翻译成十进制序列的话:1x2的一次方  结果就是2
	printf("%d\n", a);//此时的a没变还是原来的1,当对a左移右移操作时,a是不变的,除非移完后赋给a

	//假设左移2位,00000000 00000000 00000000 00000100    1x2的2次方  结果4

	return 0;
}

逻辑操作符

位操作符:

(2进制)位操作

&(按位与)     |(按位或)     ^(按位异或)

&(按位与)以下代码:

#include<stdio.h>
int main()
{
	//(2进制)位操作
	// &(按位与)与是并且的意思
	// | (按位或)
	// ^ (按位异或)
	int a = 3;   //  a b (2进制)位操作
	int b = 5;   //  3 5 转换的2进制是 011   101
	int c = a & b; //2进制怎么转化呢? :假设1111: 二进制:    1              1           
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值