• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

C进制类型说明符位运算char类型

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

进制

1. 什么是进制

是一种计数的方式 数值的表示形式

2. 二进制

1> 特点: 只有01 21

2> 书写格式: 0b或者0B开头

3> %d 以带符号的十进制形式输出整数的格式符, %u 以不带符号的十进制形式输出整数的格式符

3. 八进制

1> 特点: 0~7 逢八进一

2> 书写格式: 0开头

3> %o 以不带符号的八进制形式输出整数的格式符

4. 十六进制

1> 特点: 0~F 逢十六进一

2> 书写格式: 0x或者0X开头

3> %x 以不带符号的十六进制形式输出整数的格式符

 

类型说明符

1. shortlong

1> shortlong可以提供不同长度的整型数 也就是可以改变整型数的取值范围

2> 可以连续使用2long 也就是long long, 一般来说 long long的范围是不小于long

3> 还有一点要明确的是: short int等价于short, long int等价于long, long long int等价于long long

2. signedunsigned

1> 首先要明确的: signed int等价于signed, unsigned int等价于unsigned

2> signedunsigned的区别就是它们的最高位是否要当做符号位 并不会像shortlong那样改变数据的长度 即所占的字节数

signed: 表示有符号 也就是说最高位要当做符号位 所以包括正数, 负数和0 其实int的最高位本来就是符号位 已经包括了正负数和0 因此signedint是一样的 signed等价于signed int, 也等价于int

unsigned: 表示无符号 也就是说最高位并不当做符号位 所以不包括负数

 

位运算

1. 按位与 &

1> 功能: 只有对应的两个二进位均为1 结果位才为1 否则为0

2> 举例: 比如9&5 其实就是1001&101=1 因此9&5=1

3> 规律: 二进制中 1&就保持原位 0&就为0

2. 按位或 |

1> 功能: 只要对应的二个二进位有一个为1 结果位就为1 否则为0

2> 举例: 比如9|5 其实就是1001|101=1101 因此9|5=13

3. 按位异或 ^

1> 功能: 当对应的二进位相异(不相同) 结果为1 否则为0

2> 举例: 比如9^5 其实就是1001^101=1100 因此9^5=12

3> 规律: 相同整数相^的结果是0 比如5^5=0 多个整数相^的结果跟顺序无关 比如5^6^7=5^7^6 因此得出结论: a^b^a = b

4. 按位取反 ~

对整数a的各二进位进行取反 符号位也取反(01 10)

5. 左移 <<

把整数a的各二进位全部左移n 高位丢弃 低位补0 左移n位其实就是乘以2n次方

由于左移是丢弃最高位 0补最低位 所以符号位也会被丢弃 左移出来的结果值可能会改变正负性

6. 右移 >>

把整数a的各二进位全部右移n 保持符号位不变 右移n位其实就是除以2n次方

为正数时 符号位为0 最高位补0

为负数时 符号位为1 最高位是补0或是补1 取决于编译系统的规定

 

char类型

1. 存储细节

字符在内存中存储的东西就是该字符所对应的ASCII码值

ASCII单字节表(双字节GBK\GB2312\GB18030\Unicode)

2. 注意: 单引号'' 只能扩住单字节的字符

3. 当做整型使用

-128~127范围内 可以当做整数来用

 

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
c#Brush、Color、String相互转换发布时间:2022-07-14
下一篇:
统计学习方法---感知机模型原理及c++实现发布时间:2022-07-14
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap