资源描述:
《王峰C语言程序设计.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第三章C的基本数据类型及运算2.1标识符2.2数据类型2.3常量2.4变量2.5运算符2.6表达式2.7数据类型,运算符与表达式举例2.1标识符正确不正确count1counttest123hi!thereHigh-balancehigh..balancePIa+b说明:(1)与有些程序设计语言的规定不同,在C语言中,标识符中大小写字母是有区别的。程序中基本上都采用小写字母表示各种标识符,如变量名、数组名、函数名等。书写的各种语句也均用小写字母,而大写字母只用来定义宏名等,用的不多。(2)不同的系统
2、对标识符的长度有不同的要求,有的要求为6个字符,有的允许使用8个字符,而TurboC系统下的有效长度为1至32个字符。(3)除了少数工作单元我们用单个字符作标识符,一般的应做到见名知意,以提高程序的可读性。如用sum表示和,score表示成绩,max表示最大等等。2.1.2关键字ANSIC规定了32个关键字(保留字),不能再用作各种标识符。下面列出32个关键字:auto,break,case,char,const,continue,default,do,double,else,enum,extern,
3、float,for,goto,if,int,long,register,return,short,signed,sizeof,static,struct,switch,typedef,union,unsigned,void,volatile,while。它们用来表示C语言本身的特定成份,具有相应的语义,可构成所有的C语言语句。C语言还使用下列12个标识符作为编译预处理的命令单词,但使用时前面应加“#”:define,elif,else,endif,error,if,ifdef,ifndef,incl
4、ude,line,progma,undef。2.2数据类型2.2.1基本数据类型1.基本数据类型表2.1C基本数据类型的长度和值域字符型(char)变量用于存贮ASCII码字符,也可存贮8位二进制数。整型(int)变量用于存贮整数。因其字长有限,故可表示的整数的范围也有限。单精度实型(float)和双精度实型(double)变量用于存贮实数,实数具有整数和小数两部分或是带指数的数据。表中的值域用绝对值表示。无值型(void)有两种用途:第一是明确地表示一个函数不返回任何值;第二是产生同一类型的指针
5、。2.类型修饰符除了无值类型外,基本数据类型可以带有各种修饰前缀。修饰符用于明确基本数据类型的含义,以准确地适应不同情况下的要求。类型修饰符种类如下:signed有符号unsigned无符号long长Short短表2.2C基本类型及其修饰符的所有组合不同的计算机系统对各类数据所占内存字节数有不同的规定,如int型有的系统占16位,有的占32位。longdouble型有的占128位,有的占64位。有符号(signed)和无符号(unsigned)的整型量的区别在于它们的最高位的定义不同。如果定
6、义的是有符号的整型(signedint),C编译程序所产生的代码就设定整型数的最高位为符号位,其余位表示数值大小。如最高位为0,则该整数为正;如最高位为1,则该整数为负。例如用8位二进制表示时:大部分计算机表示有符号数时都使用二进制补码。原因及细节将在微机原理课上学习。补码的求法很简单:正数补码即原码;负数的补码是将其对应原码的各位(除符号位外)按位求反,然后加1。上述四个数用8位二进制表示有符号数时机内补码值为:有符号整数对于许多运算都是很重要的。但是它所能表达的最大数的绝对值只是无符号数的一半。例如
7、,32767的有符号整数表示为:0111111111111111如果最高位设置为1,则该数就会被当作-1。然而,如将该数定义为无符号整型(unsignedint),那么当最高位设置为1时,它就变成了65535。2.2.3指针类型指针是C语言中一个重要概念。正确而灵活地运用它,可以有效地表示复杂的数据结构;能动态分配内存;能方便地使用字符串;有效而方便地使用数组;在调用函数时能得到多于一个的值;能直接处理内存地址等。指针类型迥异于前述各种数据类型,不管是简单类型的数据,还是构造类型数据,均是代表数据
8、的,而指针类型是代表地址的。2.3常量2.3.1数值常量1.整型常量整型常量也称为整型常数或整数。C整型常量按进制分可分为十进制整数,八进制整数和十六进制整数。1)十进制整数十进制整数以正负号开头,后跟0~9的若干位数字构成。如123,-456,0等。2)八进制整数八进制整数是以正负号开头,第一位数字一定是0,后面跟0~7的数字。如八进制数0123,相当于十进制数83;八进制数-012,相当于十进制数-10。八进制数与十进制数的