龙空技术网

C语言001 预备知识下

快乐的小log 196

前言:

今天你们对“c语言输入多个数据”大概比较珍视,小伙伴们都需要了解一些“c语言输入多个数据”的相关知识。那么小编同时在网络上汇集了一些关于“c语言输入多个数据””的相关内容,希望各位老铁们能喜欢,咱们一起来了解一下吧!

title

1、无符号数

8位无符号数 max 11111111 = 2^7+2^6+2^5+…+2^0 = 255

Min 0 所以取值为[0,255]

16位无符号数 同理可求取值范围为 [0,65535]

有符号数 & 无符号数

0000 0001     1           127*2 = 254     [0,255] 256个数字0111 1111     127        [0,255]            无符号的数列 1000 0001   -1            [-128,127]       有符号的数列1111 1111   -1270000 0000    01000 0000    -128
2、数据溢出

C语言 char 范围 一个字节

无符号 max 11111111 = 255 min 00000000 = 0

无符号数据范围 [0,255] 一共有256个数

有符号,最高位代表符号位。1表示负数,0表示正数

在计算机中,当要表示的数据超出计算机所使用的数据的表示范围时,则产生数据的溢出。

数据溢出 示例

负数	1111 1111 = -127	1111 1110 = -126	1111 1101 = -125	。。。。。	。。。。。	1000 0001 = -1	1000 0000 = ? //结果是-128 这里我们只需知道,不需深究	0000 0000 = 0	0000 0001 = 1	0000 0010 = 2	。。。。。	。。。。。	0111 1111 = 127	综上我们可以看出 有符号数据范围是[-128,127]
C语言		char c = 129;		printf("%d",c); //输出结果-127		分析:			char c定义的默认是有符号的字符数据。上述给出有符号的数据范围是[-127,128]			所以产生数据溢出			129是整形数据 int类型 假设16位机器上 int 占两个字节				129原码   0000 0000 1000 0001 				129反码   0000 0000 1000 0001				129补码   0000 0000 1000 0001			取后八位 1000 0001 作为原码存储				原码 1000 0001				反码 1111 1110				补码 1111 1111       -127				同理 char c = -129;			 printf("%d",c); //输出结果127	 					-129原码   1000 0000 1000 0001 				-129反码   1111 1111 0111 1110				-129补码   1111 1111 0111 1111			取后八位 0111 1111 作为原码存储 正数三码一样				原码 0111 1111				反码 0111 1111				补码 0111 1111       127			so 整数           -129 -128 -127 -126 -125 -124 -123 。。。。。0 1 2。。。。127  128  129  130内存表示的数    127 -128 -127 -126 -125 -124 -123 。。。。。0 1 2。。。。127 -128 -127 -126     		

数据溢出 代码演示

3、位运算1. 位运算(与,或,非,异或)

AND 两位同时为1 才为1 符号表示为 &

10010 & 01010 下边表示 只有红色部分才同时为1

10010 所以 10010 & 01010 = 00010 前面三个0去掉

01010 10010 & 01010 = 10

OR 两位一方为1就为1 符号表示为 |

10010 | 01010 下边表示

10010 所以 10010 | 01010 = 11010

01010

NOT 取反操作 符号表示为 ~

~10010 = 01101

异或 两位不同(异)则为1 ,相同为0 符号表示为 ^

10010 ^ 01010 下边表示

10010 所以 10010 ^ 01010 = 11000

01010 01010

Tips X^y^y = X 加密操作

10010 ^ 01010 ^ 01010 = 10010

对一个数而言 进行两次同样的异或操作最后得到的数是它本身

位运算功能集合

标签: #c语言输入多个数据 #c语言 知乎 #c语言图形题数字 #c语言负整数在内存中的存储形式是 #c语言怎么输入字母符号