前面我们学习了c语言里怎么去定义一个整型变量,并且去给变量进行合法的命名。

那么可能有人有疑问:你这里只是学习整数类型,那么我的数据假设是小数呢,是符号呢,那怎么办?

所以接下来我要讲的是,在c语言里,到底有多少种数据类型呢?[what]

c语言中所提供的基本数据类型(零基础学习c语言四)(1)

这张图片,今天我只讲基本数据类型的部分,也就是大家只需要关注上面的部分(基本类型的部分)

C语言基本数据类型:

一、整型:short int long

这三个都是整型变量,区别在于他们所能表示的整数的大小。以下都是对于32位系统上来说:

1、short:短整型,占2个字节

所能表示的数:-32,768 到 32,767

short a = 10; //正确 short b = 40000; //错误,超出范围

2、Int:整型,占4个字节

所能表示的数:-2,147,483,648到 2,147,483,647

int a = 20; //正确 int b = 40000000000; //错误,超出范围

3、long:长整型,占4个字节

所能表示的数:-2,147,483,648到 2,147,483,647

long a = 100;

二、浮点型:float double

1、float:单精度浮点型,占4个字节

所能表示的数:1.2E-38 到 3.4E 38

float a = 4.9;

2、double:双精度浮点型,占8个字节

所能表示的数:2.3E-308 到 1.7E 308

double a = 19.44;

三、字符型:char

char:字符型,占1个字节

所能表示的数:-128到127,或者0到255

char a = 'f'; //正确 char b = 'abc'; //错误 char a = 10; //正确

这里char声明的是一个字符变量,字符需要被单引号包裹起来,而且只能是一个字符。这里有人可能不是很理解,既然是字符,那么这里定义的所表示的数的范围又是怎么来的。这里就需要牵扯到字符和对应数是怎么一个对应关系的,这个我后面的章节会讲到[来看我]。

c语言中所提供的基本数据类型(零基础学习c语言四)(2)

以上所有的数据类型前面都可以加一个unsigned,unsigned意思为无符号的意思,很好理解,就是这个数它不是负数[机智],举个例子,比如我们申明一个无符号的整形变量。

unsigned int a = 10; //正确 unsigned int b = -10; //错误

注:8个位为一个字节,那么通过排列组合,8位,共可以表示最大2的8次方个数,也就是256,那么对于无符号的占一个字节的变量类型来说,它所能表示的数就是0到255。

比如unsigned char,他所能表示的数就是从0到255,当没有加unsigned的时候,就表示可正可负,那么256种情况就需要拆成两半,一半表示负数,一半为正数,所以所能表示的数是:-128到127。

在这里有的人可能还不是很理解,这是由于你还不知道内存的分配是怎么样的,这个后续我会单独出一篇为大家讲解。[呲牙]

,