资源描述:
《c语言基本知识》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、C语言数据类型一、整型1、整型数说明加上不同的修饰符,整型数有以下几种类型;(signed)shortint有符号短整型数说明。简写为short或int,字长为2字节共16位二进制数,数的范围是-32768~32767。(signed)longint有符号长整型数说明。简写为long,字长为4字节共32位二进制数,数的范围是-2147483648~2147483647。unsignedshortint无符号短整型数说明。简写为unsignedint,字长为2字节共16位二进制数,数的范围是0~65535。unsignedlongint无符号长整型
2、数说明。简写为unsignedlong,字长为4字节共32位二进制数,数的范围是0~4294967295。2、整型变量定义可以用下列语句定义整型变量inta,b;/*a、b被定义为有符号短整型变量*/unsignedlongc;/*c被定义为无符号长整型变量*/3、整型常数表示按不同的进制区分,整型常数有三种表示方法:十进制数:以非0开始的数如:220,-560,45900八进制数:以0开始的数如:06;0106十六进制数:以0x开始的数如:0x0D,0xFF,0x4e另外,可在整型常数后添加一个"L"或"l"字母表示该数为长整型数,如22L,0
3、773L,0x34l。二、浮点型(实型)1、浮点数说明float单浮点数(单精度实型)。字长为4个字节共32位二进制数,数的范围是3.4e-38~3.4e38。double双浮点数(双精度实型)。字长为8个字节共64位二进制数,数的范围是1.7e-308~1.7e308。2、浮点型变量定义可以用下列语句定义浮点型变量:floata,f;/*a,f被定义为单浮点型变量*/doubleb;/*b被定义为双浮点型变量*/3、浮点常数表示例如:十进制数形式:+29.56,-56.33,6.365指数形式:2.1E5,-2.8E-2,-6.8e-18注意:
4、1.浮点数均为有符号浮点数,没有无符号浮点数。2.浮点常数只有一种进制(十进制)。3.所有浮点常数都被默认为double,如果要指定其为单精度型,应该加后缀f,如:23.21f。4.TurboC默认格式输出浮点数时,最多只保留小数点后六位5.绝对值小于1的浮点数,其小数点前面的零可以省略。如:0.22可写为.22,-0.0015E-3可写为-.0015E-3。注意:对于双精度浮点型变量,在调用格式化输入函数scanf()输入该类型变量的值时,必须使用的占位(格式)符是%Lf或%lf(在%与f之间的字符是英文字符L的小写,而不是数字1。所以,最好不
5、要用小写英文字母l,而用大写的L),不能用%f格式。但是,在调用格式化输出函数printf()输出双精度变量的值时,却可以使用%f格式。三、字符型1.字符型说明(signed)char有符号字符型。字长为1个字节共8位二进制数,数的范围-128~127。unsignedchar无符号字符型。字长为1个字节共8位二进制数,数的范围是0~255。2、字符型变量定义加上不同的修饰符,可以定义有符号和无符号两种类型的字符型变量,例如:chara:/*a被定义为有符号字符变量*/unsignedcharl;/*l被定义为无符号字符变量*/字符在计算机中以其
6、ASCII码方式表示,其长度为1个字节,有符号字符型数取值范围为-128~127,无符号字符型数到值范围是0~255。因此在TurboC语言中,字符型数据在操作时将按整型数处理,如果某个变量定义成char,则表明该变量是有符号的,即它将转换成有符号的整型数。TurboC中规定对ASCII码值大于0x80的字符将被认为是负数。例如ASCII值为0x8c的字符,定义成char时,被转换成十六进制的整数0xff8c。这是因当ASCII码值大于0x80时,该字节的最高位为1,计算机会认为该数为负数,对于0x8c表示的数实际上是-74(8c的各位取反再加1
7、),而-74转换成两字节整型数并在计算机中表示时就是0xff8c(对0074各位取反再加1)。因此只有定义为unsignedchar0x8c转换成整型数时才是8c。这一点在处理大于0x80的ASCII码字符时(例如汉字码)要特别注意。一般汉字均定义为unsignedchar。另外,也可以定义一个字符型数组,此时该数组表示一个字符串。例如:charstr[10];计算机在编译时,将留出连续10个字符的空间,即str[0]到str[9]共10个变量,但只有前9个供用户使用。第10个str[9]用来存放字符串终止符NULL即" ",终止符是编编译程序
8、自动加上的。3.字符型常数表示能用符号表示的字符可直接用单引号括起来表示,如'a','9','Z',也可用该字符的ASCII码值表示,例