一、ASCII码

ASCII (American Standard Code for Information Interchange),中文名:美国信息交换标准代码,是一种用数字表示字母和符号的标准。

标准的ASCII码共有128个,利用数字0-127来表示字母和符号,其中:

  • 0~31及127是控制字符(不会显示出来)
  • 48~57为0到9十个阿拉伯数字
  • 65~90为26个大写英文字母
  • 97~122号为26个小写英文字母
  • 其余为一些标点符号

ASCII码表

代码

字符

代码

字符

代码

字符

代码

字符

0

NUL 空字符

32

空格

64

@

96

`

1

SOH 标题开始

33

!

65

A

97

a

2

STX 正文开始

34

"

66

B

98

b

3

ETX 正文结束

35

#

67

C

99

c

4

EOT 传输结束

36

$

68

D

100

d

5

ENQ 请求

37

%

69

E

101

e

6

ACK 收到通知

38

&

70

F

102

f

7

BEL 响铃

39


71

G

103

g

8

BS 退格

40

(

72

H

104

h

9

HT 水平制表符

41

)

73

I

105

i

10

LF 换行键

42

*

74

J

106

j

11

VT 垂直制表符

43

+

75

K

107

k

12

FF 换页键

44

,

76

L

108

l

13

CR 回车键

45

-

77

M

109

m

14

SO 不用切换

46

.

78

N

110

n

15

SI 启用切换

47

/

79

O

111

o

16

DLE 数据链路转义

48

0

80

P

112

p

17

DC1 设备控制1

49

1

81

Q

113

q

18

DC2 设备控制2

50

2

82

R

114

r

19

DC3 设备控制3

51

3

83

S

115

s

20

DC4 设备控制4

52

4

84

T

116

t

21

NAK 拒绝接收

53

5

85

U

117

u

22

SYN 同步空闲

54

6

86

V

118

v

23

ETB 结束传输块

55

7

87

W

119

w

24

CAN 取消

56

8

88

X

120

x

25

EM 媒介结束

57

9

89

Y

121

y

26

SUB 代替

58

:

90

Z

122

z

27

ESC 换码

59

;

91

[

123

{

28

FS 文件分隔符

60

<

92

\

124

|

29

GS 分组符

61

=

93

]

125

}

30

RS 记录分隔符

62

>

94

^

126

~

31

US 单元分隔符

63

?

95

_

127

DEL 删除

  • 观察上表可以得到一个规律:数字 < 大写字母 < 小写字母

二、C语言中的char类型

char类型用来表示一个字符,C语言中的char类型在计算机中是以ASCII码的形式来存储的

C语言中为char类型赋值的方式有三种:

  1. 单引号中直接加字符
char a = 'a';

注意:

  • 一定要使用单引号
  • 这些字符必须是128个ASCII中的,例如:char a = ‘云’; 就不会正确显示,因为ASCII码中不包括中文的定义;
  1. 直接使用ASCII码
// "a"的ASCII码为97
char a = 97;
  1. 使用 ‘\ASCII的8进制’ 的形式
char a = '\141';
// "a"的ASCII码为97,转换为8进制就是141

注意:一定要使用单引号

三、转义符

计算机语言中定义了一些特殊字符,可用转义符"\"加字母或数字来表示它们

前面用"\"加ASCII码的八进制来表示字符,这也是转义符的一种

表:常用的转义符

转义符

意义

ASCII码

\n

换行(LF) ,将当前位置移到下一行开头

10

\r

回车(CR) ,将当前位置移到本行开头

13

\t

水平制表(HT) (跳到下一个TAB位置)

9

\v

垂直制表(VT)

11

\\

代表一个反斜线字符\

92

\’

代表一个单引号字符

39

\"

代表一个双引号字符

34

\?

代表一个问号

63

\0

空字符(NUL)

0

四、C语言输入/输出字符

C语言中可以利用getchar和putchar函数进行字符的输入和输出:

getchar() 获取输入的单个字符

putchar() 输出一个字符




小练习:

编写一个程序,将小写字母转换为大写字母,最后输出。

建议先思考并试着编写程序,然后再回来看下面的解析。











解析:

观察ASCII码表:

a – 97, A – 65

b – 98,B --66

c-- 99,C --67 …

我们可以发现一个规律,即:小写字母的ASCII码总是大于大写字母,且互相对应的大小写字母间的ASCII码相差32

所以这个程序可以这样写:

  1. 获取输入的字符
  2. 将这个字符减去32并输出

如果输入的字符不是小写字母怎么办呢?没关系,我们暂时可以不用考虑这个问题,等到后面再对这个程序进行优化。

示例代码:

#include<stdio.h>

void main()
{
    printf("请输入一个小写字母:");
    char a; // 声明一个char型变量a
    a = getchar(); // 将输入的字符赋给a 
    a = a - 32; // 让a减去32
    putchar(a); // 输出变量a
    putchar('\n');
    printf("程序结束");
}

运行结果:

android字母asc值 字母asc码_分隔符


好了,文章到这里就结束了,我们下一节再见