C语言入门第二篇,基本数据类型

时间:2021-02-02 20:01:18

数据类型是C语言里非常重要的东西,其实我很讨厌这些概念,我们就怎么简单怎么说,到后面去用代码来熟能生巧。

我们来想想学数学的时候有些什么数据类型啊?整数,小数,负数,正数,有理数,无理数等等。当然这些都是数学里面的数据类型,C语言因为是编程语言,所以会有些其他数据类型。下面我就来看看。

在程序运行的时候,CPU处理数据然后处理的数据则放入了内存中。而这些处理的数据会有一个类型。就是我们今天说的数据类型。数据被数据类型定义后会在内存开辟一个固定大小的空间,用于存储数据。内存最小的单位是位,8b(位)=1B(字节),1024B(字节)=1MB(兆),1024MB(兆)=1GB

C语言入门第二篇,基本数据类型

我们今天只说基本类型,其它的类型后面再讲。图中也很清楚基本类型分为数值类型和字符型。

数值类型
首先我们必须知道数据在存储的时候用的是二进制。short,int,long都是定义整数的。他们的区别是开辟内存空间大小不一样。至于到底开辟了多大的空间,这取决你的编译器是怎样定义的(和你的系统是32位还是64位也有关系)。一般是short(2个字节16位),int和long(4个字节32位),C标准只规定是后一种类型不小于前一种类型,所以在不同的地方,可能不一样。因为每位是二进制,所以short能表示的数是 2161 ~ +21611 (这里减一的原因是正负号占了一位,为什么负数不加1,是因为计算机负数用补码表示,符号位不变,其余位取反,然后加1,所以规定负数为 2161 ,如果不懂这段可以跳过,记得就行了)。当然我们也可以利用C语言里面的unsigned表示无符号(正负号)的数字。

unsigned short
unsigned int
unsigned long

上面的unsigned short 能表示的数就是0~ 216

这里特别说一下c语言里面有个数据类型long long(8个字节,这里编译器环境为GCC 5.1.0),可以表示更大的整数。

float和double都表示浮点数,这两个最明显的区别就是小数点后的位数不一样,double要多一些。内存空间大小float为4个字节,double为8个字节。

字符类型
char是字符类型,占一个字节。

很多人肯定纠结这些数据类型到底有什么用?答案是声明变量等等,至于什么是变量我们下一篇讲。

PS:既然是语言难免有些语法,大家就免为其难的记一下吧

图片引用于http://www.cnblogs.com/onedime/archive/2012/11/21/2780149.html