C程序设计语言学习笔记(2)

来源:互联网 发布:淘宝上汽车配件 编辑:程序博客网 时间:2024/05/16 12:28

C程序设计语言学习笔记(2)

符号常量的使用

#define PRICE 20  //一改全改,符号常量与变量不同,它的值在其作用域内不能改变,也不能再被赋值

 

还记得上节的3个小程序吗???那里 用到了一些基本的数据类型,有int long float等。

本节主要介绍基本数据类型中的易错知识:

总结如下:

符号常量的使用

#define PRICE 20  //一改全改,符号常量与变量不同,它的值在其作用域内不能改变,也不能再被赋值

 

1、变量:int i = 3;

名字,内存中占一定的存储单元。区分变量名与变量值.

变量值在内存中是以二进制保存的,数值以补码表示。即数值在计算机中是以二进制补码保存的。

正数的补码与原码相同;

负数的补码:怎么求?除符号位各位取反,尾数加1

2、溢出 与 误差:

请参考一些数据类型在不同编译器下的范围的书籍。

3、数值之间的运算 ,运算符的优先级(左到右还是右到左)与 数值转换规则(charshort-int-unsigned-long-double

 

在计算机中,每一个键盘标准输入都有一个ascii码与之对应,如下:

ASCII码表完整版

ASCII

控制字符

ASCII

控制字符

ASCII

控制字符

ASCII

控制字符

0

NUT

32

(space)

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

DCI

49

1

81

Q

113

q

18

DC2

50

2

82

R

114

r

19

DC3

51

3

83

X

115

s

20

DC4

52

4

84

T

116

t

21

NAK

53

5

85

U

117

u

22

SYN

54

6

86

V

118

v

23

TB

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

 

NUL 

VT 垂直制表

SYN 空转同步

SOH 标题开始

FF   走纸控制

ETB  信息组传送结束

STX  正文开始

CR   回车

CAN  作废

ETX  正文结束

SO   移位输出

EM   纸尽

EOY  传输结束

SI    移位输入

SUB  换置

ENQ  询问字符

DLE  空格

ESC  换码

ACK  承认

DC1  设备控制1

FS   文字分隔符

BEL  报警

DC2  设备控制2

GS   组分隔符

BS   退一格

DC3  设备控制3

RS   记录分隔符

HT   横向列表

DC4  设备控制4

US   单元分隔符

LF   换行

NAK  否定

DEL  删除

 

转义字符 意义 ASCII码值(十进制

\a 响铃(BEL) 007 

\b 退格(BS) 008 

\f 换页(FF) 012 

\n 换行(LF) 010 

\r 回车(CR) 013 

\t 水平制表(HT) 009 

\v 垂直制表(VT) 011 

\\ 反斜杠 092 

\? 问号字符 063 

\' 单引号字符 039 

\" 双引号字符 034 

\0 空字符(NULL) 000 

\ddd 任意字符 三位八进制 

\xhh 任意字符 二位十六进制

看程序:

复制代码
 1 #include <stdio.h> 2 main() 3 { 4     long c,nl; 5     nl = 0; 6     while((c=getchar())!='\n') 7     if(c=='\s')//判断输入字符中是否含有字符s,注意区分转义字符。关键查看ascii码 8         ++nl; 9     printf("%ld\n",nl);10 }
复制代码

 

  

这段程序统计 输入字符中 含有s的个数。

这里我们主要区别转义符与普通字符的:

比如spaceascii值为32 对应的八进制0x040,所以上述可以改为0x040,统计输入的空格个数。这个就解释了

\ddd 任意字符 三位八进制 

\xhh 任意字符 二位十六进制

 

 

本节主要回顾了c语言中的基本数据类型:整、实、指针、空类型。以及基本数据类型在计算机中的存储原理。

原创粉丝点击