从《C程序设计(第三版)》第三章开始温习。
———————————————————————————————————————————————————————————————————————————
一.C语言的数据类型
C语言提供了以下数据类型:
基本类型(包括整型,字符型,浮点型,和枚举类型);构造类型(包括数据类型,结构体类型,和共用体类型);指针类型;和空类型。见下图1.1(摘自书籍原图)。
图1.1
简介基础类型,其余类型在后面介绍
1. 整型(short int\int\long int)
整型即包括了所有的整数,比如6、27、109、256、-10、0、-289等。
所占字节:short int占2个字节,int占2个字节或者4个字节,long int占4个字节。int到底是占2个字节还是4个字节,是根据编译器了,不同的编译器,规定是不一样。ANSI标准定义int是占2个字节,TC是按ANSI标准的,它的int是占2个字节的。但是在VC里,int是做long int处理,即占4个字节的。
2.字符型(char)
将一个数字(0~9)、英文字母(a~z、A~Z)或者其他符号(+、-、!、?等)用单引号括起来,这样构成的就是字符常量。比如'6'、'a'、'F'、'+'、'$'等。
注意:单引号只能括住1个字符,而且不能是中文字符,下面的写法是错误的:'abc'、'123456'、’人‘。
所占字节:1个字节
3.浮点型(float\double\long double)
浮点型常用double和float两种数据类型
double:双精度浮点型,其实就是小数。比如5.43、-2.3、0.0等,注意,0.0也算是个小数。
float:单精度浮点型,也是小数,比double的精确程度低,也就是说所能表示的小数位数比较少。为了跟double区分开来,float型数据都是以f结尾的,比如5.43f、-2.3f、0.0f。需要注意的是,绝对不能有10f这样格式的,编译器会直接报错,只有小数才允许加上f。
所占字节:单精度型占4个,双精度型占8个,长双精度型根据编译器不同而不同,在VC中为8个。
4.枚举类型(enum)
用一个例子说明,一周七天用枚举表示:enumweekday{ sun,mon,tue,wed,thu,fri,sat };自动给第一个项赋值sum=0,后面项依次类推加一,mon=1,tue=2,wed=3,the=4,fir=5,sat=6.详细用法在后面后再出现。
所占字节:enum在声明时不占字节,定义时占字节数与整型相同,即在VC中占4个。