- 1、本文档共56页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第2章 数据类型及表达式 2.1 词法符号 2.2 基本数据类型 2.3 变量与常量 2.4 运算符与表达式 2.5 类型转换 2.1 词法符号 2.1.1 字符集 利用C语言编写源程序时用到的字符有数字、字母、其他符号、转义序列等。 ① 数字:0,1,…9。 ② 字母:A、B、…Z和a、b、…z。 ③ 其他符号:! “ # % ‘ ( ) * + ,- · / ; : = ? [ \ ] ^ _ { | } ~ 。 ④ 转义序列。 2.1.2 标识符 标识符是用来标记变量、符号常量、数据类型和函数的有效字符序列。必须符合下列语法规则: 标识符必须由字母(大小写皆可)、数字或下划线组成。 标识符的第一个字符必须是字母或下划线。 下列字符序列是合法的标识符: NAME1 name1 Total_5 Paper _i3 _out 以下字符序列不是合法的标识符: NAME 1 name$2 5t $4 a+b 标识符中区分大小写字母。一般情况下,变量名、函数名和类型名用小写字母标识,符号常量用大写字母标识。 标识符的长度是有限制的,不同的编译器能识别的最大长度不同。 标识符不能分行书写。 2.1.3 关键字 又称作保留字,它是由系统定义的、具有特定含义的标识符,不能当作一般标识符来使用。(见P14) 2.3 常量与变量 在C程序中,数据以常量或变量的形式描述,每个常量或变量都有数据类型。 2.3.1 常量 常量是指在程序运行过程中值不改变的量。在C中,常量有:整型、实型、字符型和字符串型等。 1. 整型常量 C语言中普通整常量在机器中占一个字长。 整常量又分为十进制整常量、八进制整常量和十六进制整常量,数据不能带小数点 。 (1)十进制整常量:非0开头,以正/负号、0~9数字组成的带符号常数。如1234,10,-5等均为合法的十进制整数,而12.3,1.2E+2,1.2*102 等均为非法十进制整常数。 (2)八进制整常量:以数字0开头的八进制数字串,其中只能出现数字0~7,通常为无符号数。如012,075,032767等均为合法八进制整数,而123,018等均为非法八进制整数。 (3)十六进制整常量:以0x或0X开头的十六进制数字串,可用的数字有:0~9、a~f或A~F,通常为无符号数。如0x29,0x3a,0x10等均为合法十六进制整数,而25,0x3g,52h等均为非法十六进制数。 (4)长整型常量:在十进制、八进制、十六进制表示的整常数中,若数字串的后面加上字母l或L,则说明该常数为长整型常数,如:12l、-123L、027L、0x9FL。 2. 实型常量 又称浮点数,它有两种表示形式: (1)小数形式 由正/负号、数字和小数点组成的常数,如: 3.14、0.618、.618、10.0和123.。必须有小数点,并且小数点的前面或者后面必须有数字。 (2)指数形式 由数符、尾数(整数或小数)、阶码标志(E或e)、阶符和整数阶码组成的常数, 必须有阶码标志e(或E),并且e之前必须有数字,e之后的指数必须是整数。如1.2E+3,123e-2,123e5等都是合法的,而123,e3,2.1E3.5,.e4,2.E等都是非法的指数形式。 在C中,一个实型常数如果没有任何说明,则表示为double型。若要表示float型,则必须在实型数后面加上F或f,如:12.3f、12.3e+4F等。 3. 字符常量 分为一般字符常量和转义字符常量。 (1)一般字符:由一对单引号括起来的单个字符,如’a’,’A’,’#’,’’等都是合法的单个字符常量,可以从键盘输入,也可以在屏幕上显示。 (2)转义字符:以“\”开头的特定字符序列,用于表示ASCII字符集中一些不可显示或无法从键盘输入的控制字符(见书中P17转义字符表)。其中,\ddd为位型方式,代表由ddd(三位八进制数)作为ASCII码值所对应的字符,这种方式可表示ASCII码表中任一字符,如’\101’代表’A’。 C语言规定:在内存中,字符数据是以其ASCII码存储的(即以整数表示),占据一个字节。因此,C语言中字符数据和整型数据间可以通用,也可对字符数据进行算术运算,如下例。 [例
文档评论(0)