C语言笔记(操作符)

这篇博客详细介绍了C语言中的各种操作符,包括算术操作符、移位操作符、位操作符、赋值操作符、单目操作符、关系操作符、逻辑操作符、条件操作符、逗号表达式以及下标引用、函数调用和结构成员操作。通过实例解释了如算术运算、位移位、按位与或异或、赋值、单目操作和条件表达式等操作符的用法。
摘要由CSDN通过智能技术生成

一、操作符

1、算数操作符

"+"    a+b表示a+b

"-"     a-b表示a-b

"*"     a*b表示axb

"/"      a/b表示a除以b

"%"    计算余数    eg:10%3表示计算10/3的余数     10%3=1      

%u 十进制无符号整数 
%f 浮点数 
%s 字符串 
%c 单个字符 
%p 指针的值 
%e 指数形式的浮点数 
%x, %X 无符号以十六进制表示的整数 
%0 无符号以八进制表示的整数 
%g 自动选择合适的表示法

另外(%d表示整数,%f表示实数)

2、移位操作符

">>"   向右移位     将数的二进制形式向右移一位,

"<<"   向左移位     将数的二进制形式向左移一位,

(例题)

(1)unsigned char x=3;

x<<1是多少?x>>1是多少?

 

对于无符号数值3来说,3的二进制编码为:00000011,向左移位的方式为最左边一位0舍去,最右边移进来的一位补0,则结果的二进制编码为 : 00000110,转换为十进制数为6,所以x<<1(向右移一位)的值为6,。

向右移位的方式是最右边一位舍去,最左边补进来的一位为0,则 00000011 转化为00000001,其十进制的结果为1,所以x>>1(向左移一位)的值为1。

 (2)char x=3; 
x<<1是多少?x>>1是多少? 

对于有符号的数值3来讲,移位之后就要考虑它的正负性,因为二进制编码的第一位(0表示+,1表示-)

3的二进制编码为:00000011,向左移位的方式为最左边一位0舍去,最右边移进来的一位补0,则结果的二进制编码为 : 00000110,转换为十进制数为6,所以x=3;x<<1(向右移一位)的值为6,。

由于3是有符号数值,在移位过程中有逻辑右移和算数右移两种方式,大多数计算机采用算数右移的方式。

向右移位的方式是最右边一位舍去,最左边补进来的一位为0,则 00000011 转化为00000001,其十进制的结果为1,所以x>>1(向左移一位)的值为1。

(3)char x=-3; 
x<<1是

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值