『附录1』操作符、ASCII码表(c语言)

目录

一、操作符

Ⅰ、算数操作符(+  -  *  /  %)

Ⅱ、位移操作符(<<   >>)

Ⅲ、位操作符(&  | ^)

Ⅳ、赋值操作符(= 复合操作符+= 、 -=等等)

Ⅴ、单目操作符(! -  + & sizeof ~ -- ++ * )

Ⅵ、关系操作符(判断操作符 >  < 等)

Ⅶ、逻辑操作符(&&  || )

Ⅷ、条件操作符( 表达式1 ? 表达式2 : 表达式3)

Ⅸ、逗号表达式(,)

Ⅹ、下标引用、函数调用和结构成员

二、ASCII码表


一、操作符

Ⅰ、算数操作符(+  -  *  /  %)

操作符含义
+加:可用于任何基本类型的相加
-减:可用于任何基本类型的相减
*乘:可以用于任何基本类型的相乘
/

除:可以用于任何基本类型的相除

(相除中如果操作数有一个或两个小数则得出浮点型(double)

    如果两个都为整数,则得出整型(int))

%

余:用于整数的互余

(两个操作数必须为整数,返回的是整除之后的余数)

Ⅱ、位移操作符(<<   >>)

操作符含义
<<左移操作符:左操作数的二进制形式向左移动
>>右移操作符:左操作数的二进制形式向右移动

①左移操作符原则:左边抛弃,右边补0

#include <stdio.h>
int main()
{
	int a = 128;
	a = a << 1;
	printf("%d ", a);
	return 0;
}

 

 结果如下

②右移动操作符原则(两种):

       1. 逻辑右移:左边用0填充,右边丢弃。(与左移原理相同)

       2. 算数右移:左边用该值的原符号位填充,右边丢弃。

 判断究竟是使用逻辑右移还是算数右移:取决于编译器,当前Visual Studio 2022,使用的是算数右移。

注:对于a  << -1这种操作是未定义的操作。

Ⅲ、位操作符(&  | ^)

操作符含义
&按位与:两边数据的补码对应都为1时才为1,否则为0
|按位或:两边数据的补码对应都为0时才为0,否则为1
^按位异或:两边数据的补码对应相同为0,相异为1

举个例子:

#include <stdio.h>
int main()
{
	int a = 334;
	int b = 234;
	//a 的数据域  00000000 00000000 00000001 01001110 
	//b 的数据域  00000000 00000000 00000000 11101010
	//a&b的结果   00000000 00000000 00000000 01001010 结果为74
	printf("%d", a & b);
	return 0;
}

 结果如下

数据存储方式详解——> <创作中>

Ⅳ、赋值操作符(= 复合操作符+= 、 -=等等)

操作符含义
=给某个变量赋值
+=加等:左边的值加上右边的值最后赋值给左值
-=减等:左边的值减去右边的值最后赋值给左值
*=乘等
/=除等

%=

余等
>>=右移等
<<=左移等
&=按位与等
|=按位或等
^=按位异或等

Ⅴ、单目操作符(! -  + & sizeof ~ -- ++ * )

操作符含义
逻辑反操作
-负值
+正值
&取地址操作符
sizeof操作数的类型长度(以字节为单位)
~对一个数的二进制按位取反
--前置、后置--
++

前置、后置++

*间接访问操作符(解引用操作符)
(类型)强制类型转换

Ⅵ、关系操作符(判断操作符 >  < 等)

操作符含义
>大于
>=大于等于
<小于
<=小于等于
!=不等于(用于测试”不相等“)
==等于(用于测试”相等“)

Ⅶ、逻辑操作符(&&  || )

操作符含义
&&逻辑与(两边都为真才为真)
||逻辑或(只要有一边为真就为真)

Ⅷ、条件操作符( 表达式1 ? 表达式2 : 表达式3)

操作符含义
exp1 ? exp 2 : exp3

判断exp1是否为真,如果为真返回exp2

如果为假返回exp3。

Ⅸ、逗号表达式(,)

exp1 , exp2 , exp3 , exp4 ~~~ expn

逗号表达式的返回值为最后一个表达式的值expn

Ⅹ、下标引用、函数调用和结构成员

操作符含义
[]下表引用操作符
()函数调用操作符
.结构体成员访问:结构体.成员名
->结构体成员访问:结构体指针->成员名

二、ASCII码表

符号ASCII码
NUT0
SOH1
STX2
ETX3
EOT4
ENQ5
ACK6
BEL7
BS8
HT9
LF10
VT11
FF12
CR13
SO14
SI15
DLE16
DCI17
DC218
DC319
DC420
NAK21
SYN22
TB23
CAN24
EM25
SUB26
ESC27
FS28
GS29
RS30
US31
(space)(空格)32
33
"34
#35
$36
%37
&38
'(单引号)39
(40
)41
*42
+43
,(英文逗号)44
-45
.(英文句号)46
/47
048
149
250
351
452
553
654
755
856
957
:58
;59
<60
=61
>62
?63
@64
A65
B66
C67
D68
E69
F70
G71
H72
I73
J74
K75
L76
M77
N78
O79
P80
Q81
R82
S83
T84
U85
V86
W87
X88
Y89
Z90
[91
\92
]93
^94
_(下划线)95
·96
a97
b98
c99
d100
e101
f102
g103
h104
i105
j106
k107
l108
m109
n110
o111
p112
q113
r114
s115
t116
u117
v118
w119
x120
y121
z122
{123
|124
}125
~126
DEL127

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

寒夕君哎

动力+99(*•̀ᴗ•́*)و

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值