第1讲基本数据类型、常量与变量
基本数据类型:(C是强类型语言)
理解:123是整数,它可以加减乘除运算。’a’是字符,它可以进行字符连接等运算,但是不能进行算术运算(例外:字符可以加减整数)。
C语言三种基本数据类型:字符型、整型、实型(浮点型)。
l字符型就是一个字符。(多个字符是字符串。)
v整型根据长度分成长整型、整型、短整型;根据有无符号分为有符号整型和无符号整型。
v不同类型的数据在不同编译环境的长度是不一样的,可以用sizeof求出当前编译环境的长度。
v整型:满足long int >= int >= short int原则(即long的长度不能小于int,int的长度不能小于short)
v符号:unsigned表示无符号;signed表示有符号(signed可以省略)
vunsigned类型不能表示负数。
Ø实型(浮点型)用来表示小数。
Øfloat单精度型
Ødouble双精度型
易错点:注意C语言中整数和浮点数的存储方法是不一样的。所以不能混为一谈。
标识符
标识符两大类:1、系统的(我们不能用);2、用户定义的(我们可以用)。
关键字:系统保留,有特定含义,我们不能拿去自己用。(C语言中所有关键字都是小写。C语言是严格区分大小写的。)
预定义标识符:建议不要使用。
用户定义标识符:取名规则:由字母、数字、下划线组成;打头的不能是数字;不能包含一些特殊符号。
例如:abc afw34 ae_34 _abd _3456都是合法的;34a不合法。
常量和变量
常量分为直接常量和符号常量。
Ø直接常量:
n整型常量123(十进制)、123(八进制)、0x123(十六进制)、0xd2ff(十六进制)。
n实型常量23.250.236.23656.0.12e-6(注意:56和56.是两个不同的类型,前者是整型,后者是实型。)
n字符常量‘a’ ‘0’ ‘x’(字符常量用单引号括起来;只能是一个字符。)
n在C语言中,用单引号作为字符的定界符;用双引号作为字符串的定界符。
n注意:’a’是字符常量;”a”、“abcd”都是字符串。
n转义字符:用\字母来表示一个特定的含义;\0字符串结束标记;用\ddd表示1-3位八进制数所代表的ASCII码所代表的字符;用\xhh表示1-2位十六进制数所代表的ASCII码所代表的字符。A的ASCII码是65(十进制),a的ASCII码是97(十进制),以此类推。
n字符串常量:用双引号括起来的一串字符。”Hello world!”
n‘a’和”a”是两个不同的东西。前者是字符,后者是字符串。
n字符串的长度为它所有的字符个数再加1.(因为字符串最后有一个字符串结束标记。字符串结束标记自动加上的。)
Ø符号常量
#definePI3.14159以后在程序中,所有的PI都会当作3.14159
变量
变量的定义数据类型符变量名表;
C语言中,变量必须要先定义,后使用。
int a;定义了一个整型变量a
long int b1,b2,b3;定义了三个长整型变量b1,b2,b3
char x;定义了一个字符型变量x
float d1,d2;定义了两个浮点型变量d1和d2
变量的赋值:在C语言中,用=来赋值,并且是右边的赋值给左边的。
两种情况:初始化(在定义的同时赋值);定义以后单独赋值。
没有定义的变量是不存在,因此也是不能赋值;赋值应当和定义类型一致。如果赋值号右边的类型与左边变量的类型不一致,会自动类型转换成跟变量一致。
int a=3;定义了变量a,同时给a赋值为3(这个也叫做初始化)。
intx,y=4;定义两个变量x和y,对y进行了初始化。
float x1;定义了一个浮点型变量x1。
x1=23.56;对x1赋值。
int a=23.25;定义整型变量a,同时将23.25赋值给a,会自动将23.25转换成整型23后再赋值给a。
例如:int a=23.89;a的值是23.(不会四舍五入的)
领取专属 10元无门槛券
私享最新 技术干货