DAY02-C语言中的数据类型

C语言中的数据类型

本章重点:

  • 1,什么是数据类型
  • 2,C语言中常用的数据类型
  • 3,数据类型的使用

1,什么是数据类型

1.1 数据

在聊 “什么是数据类型” 问题之前,我们需要关注另一个比较重点的问题,即:什么是数据

数据,其实简单来说就是数值,就是我们通过观察、实验或者计算得出的结果。数据有很多种,最简单的就是数字,同时也可以为文字、图像、声音等。

对于数据,较为官方的定义是:

数据是信息的载体,是描述客观事物的数、字符、以及所有能输入到计算机中,被计算机程序所识别和处理的符号的集合,分为数值型数据和非数值型数据两种

1.2 什么是数据类型

数据类型是计算机编程中用来 定义变量或函数可以存储和处理的数值的种类。每种数据类型规定了
– 变量存储数据的方式
– 表示数据的范围
– 可以对这些数据执行的操作

数据类型的重要性在于它们帮助程序员以正确和高效的方式处理数据,同时也帮助编译器理解和优化代码。正确使用数据类型可以避免程序错误,提高程序的运行效率和可靠性。

2 数据类型

2.1 C语言中常见的数据类型

在C语言中,常见的数据类型有如下7类:
– char:字符数据类型
例如:在手机上输入 一个 英文字母 或 汉字 ,比如输入 “A” 或 “中”,这里的每一个字母或汉字都可以用 char类型 来存储。
– short:短整型
例如:记录一个从 整数 1 数到 整数 100时数过的数,可以使用short类型来存储,因为它足以覆盖这个范围,当然也可以用 int类型 来存储。
– int:整形
例如:统计一个城市的人口数量,比如一个城市有123456个人,由于人口数量为 整数 ,使用 int类型 可以很好地存储这个数据。
– long:长整型
例如:计算地球到月球的平均距离,只保 整数 数部分,则这个距离大约是384,400公里,由于这个数值可能比较大,因此可以选择使用 long类型 来表示。
– long long:更长的整型
例如:统计全球人口总数,目前全球人口已经超过70亿,这个数值很大且为 整数 ,因此需要使用 long long类型 来存储。
– float:单精度浮点型
例如:记录一个人的体重,如果我们精确到 小数部分 ,比如一个人的体重是 65.5 公斤,这是一个小数,为了保留足够的精度,常规的整型难以满足,因此可以选择使用 float类型 来存储。
– double:双精度浮点型
例如:计算天文学中的天文单位(AU),比如地球到太阳的平均距离约为1.496×10^8公里,由于这个数可能很大很大,因此我们可能需要使用科学计数法来简化书写或记录,因此可能存在很多位数的小数部分,对数据精度的要求再一次提升,而这个数值则是需要使用 double类型 来保证计算的精度。

其中:
– char 称为 字符型数据
– short,int,long,long long 称为 整形数据
– float,double 称为 <font color=”orange>浮点型数据

除却这七类常用的数据之外,C语言还允许用户 自定义与实际相关的数据类型 ,本部分内容对于初学者来说理解难度可能较大,因此本部分内容将在结构体部分做详细的补充和说明。

2.2 sizeof()函数

在计算机中,其使用的进制为二进制,即计算机能理解二进制,则一个bit位表示的其实是存储一个二进制位所需的空间
– 计算机中的最小单位:bit,则我们可以有:
– bit :比特位
– Byte:字节,1B = 8b
– kb:千比特
– mb:兆比特
– …

在C语言中,如果您需要查看一个变量的具体大小,您可以使用 sizeof() 函数来测算,其使用方法为:

sizeof(变量名);

其将返回一个 整数型数值 表示这个变量的大小,,单位为 字节 , 其使用示例如下:

  • 本处对于 sizeof(long) = sizeof(int) 做一个小小的解释:在C语言中规定,sizeof(long) >= sizeof(int),在本编译器执行的C语言标准中,选择展示的是 sizeof(long) sizeof(int)

由于不同数据类型所占空间不同,因此其可以表示的数据范围也不同,在开发时为了节省空间开支,一般建议开发者灵活使用和所需数据范围相符合的数据类型。

3,数据类型的使用

使用示例:

数据类型 变量名 = 数据;

其表示的意思可以简单的理解为:

向内存申请一块大小为 sizeof(数据类型) 的空间,并给这个空间赋予 “变量名” 的标签,并且将数据存放在这块空间内

例如上面 2.2 章节所使用的,结合 sizeof() 函数的返回类型 unsigned,我们可以定义一个 int 类型的变量来接受其返回值:

int size_int = sizeof(int);  // 向内存申请一块类型为“int”,大小为“4”的空间,并将其命名为“size_int”,用于存储sizeof(int)的值
int size_longlong = sizeof(long long);  // 向内存申请一块类型为“int”,大小为“4”的空间,并将其命名为“size_longlong”,用于存储sizeof(long long)的值

示例如下:

以上便是本文的所有内容了,如果您在阅读本文的过程中有所收获,或者有任何宝贵的建议和想法,欢迎通过邮箱、微信或者留言等方式给我留言交流,您的每一次建议都将是我前进的动力!

上一篇
下一篇