类比是学习一门新语言的好方法,以下我们类比java语言来看一下C语言的的数据类型。
C语言提供了丰富的数据类型,以下这张图能够非常好的表现C语言全部的数据类型:
从中能够看到C语言提供java了语言没有的结构体、共用体和指针类型,同一时候C语言缺少java中的布尔类型即boolean,C语言和java的差别还体如今每种类型所占的位数,具体见下图:
以下分别介绍一下各种类型使用时的注意事项
1、整型
整型常量在C语言中有三种进位制。各自是十进制、八进制和十六进制。在使用时,十进制的数字以非0数字开头,八进制的数字以0开头,十六进制的数字以0x开头,而且各中进制之间能够相互转化。
比如你能够直接printf("%d",0x567)
,其它的转化以此类推。
2、浮点型
使用浮点类型是默认是double的。假设想要使用float类型的,应在数字后边加f或F。
浮点常量能够用指数来表示。用E来表示以10为底的幂,比如:1.23E4=1.23*10^4。
在利用printf("%f",1.23456)
进行输出时,默认是保留小数点后6位,假设想要自己设置,能够使用%.xf,当中x表示想要输出的位数,如printf("%.3f",1.2345)
将会输出1.235。
浮点类型在计算机存储时分为两部分:尾数和指数。尾数部分表示数的有效数字,尾数部分越多,表示的数字就越精确。
指数部分决定数的取值范围,指数的位数越多,数的取值范围就越大。float和double的有效数字分别例如以下:
3、字符型
java中採用16位的Unicode编码存储char类型的数值,而C语言中则是採用的8位的ASCII编码进行存储。
C语言中以””为转义符进行转义。具体的转义字符表例如以下: