ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

浅析数据类型

2021-10-22 22:03:27  阅读:171  来源: 互联网

标签:字节 int 数据类型 long printf sizeof 浅析


目录

为什么会出现这么多的数据类型呢?

查看每种类型所创建空间的大小

计算机中的单位

数据类型的使用

总结


我们为什么要写代码呢?是为了希望计算机能够帮助解决我们生活中的问题。我们希望方便沟通,就出现了微信,希望方便购物,就出现了京东淘宝...计算机最基本且最关键的功能便是存储并处理数据,微信淘宝也是在处理数据之上建立起来的,我们为了能够方便处理生活中的各种各样的数据(比如身高、体重、电话号码等等),就引出了数据类型这样的概念。

char       //字符数据类型
short      //短整型
int        //整型
long       //长整型
long long  //更长的整型
float      //单精度浮点数
double     //双精度浮点数

以上就是我们C语言中常见的数据类型。

为什么会出现这么多的数据类型呢?

如果我们只用一种类型来存储数据岂不是更好,为什么要建立这么多种数据类型来自取其扰呢?更有甚者,居然把整数又给细化分为短整型,整型,长整型以及更长的整形。为解答这个问题,我们先来看一下每种类型所创建的空间在内存中所占的大小。

查看每种类型所创建空间的大小

查看所占空间的大小,我们需要借助sizeof()关键字来帮助我们。

#include<stdio.h>
int main(){
printf("%d\n",sizeof(char));
printf("%d\n",sizeof(short));
printf("%d\n",sizeof(int));
printf("%d\n",sizeof(long));
printf("%d\n",sizeof(long long));
printf("%d\n",sizeof(float));
printf("%d\n",sizeof(double));
return 0;
}

最后,我们看到输出的结果是:1 2 4 4 8 4 8。这些数字是什么意思呢?是一头牛,一匹马,还是一座房子?实际上,它的单位是字节。意思是说char占用的存储空间是1个字节,int占用的存储空间是4个字节。那么字节又是什么鬼呢?字节是计算机中的内存单位。下面我再详细描述一下计算机的单位。

sizeof()表示的是所占存储空间的大小,单位是byte

计算机中的单位

在我们计算机中,最小的单位是比特位(bit),再往上就是字节(byte),有一家公司叫做字节跳动Byte Dance,抖音今日头条都是该公司旗下的产品,接下来便是我们生活中常见的kb、mb、gb、tb、pb。

1.众所周知,计算机是一个硬件,需要通电,分为正电和负电,正好对应1/0二进制位,所以,我们计算机存储和处理的就是二进制,那么一个bit的空间我们可以存储一个二进制位(也就是0/1)。

2.1个byte=8bit,也就是可以存放8个二进制位,比若说01001011就是1个字节。

3.1kb=1024byte=2^10byte,1mb=1024kb=2^10kb,越往上也是如此,不再一一赘述。

4.C语言规定,sizeof(long)>=sizeof(int),所以我们经常见到sizeof(long)为4或者8。

这样我们就了解了这些数据类型的存储大小,我们以int举例:

int是4个字节,也就是32个bit

00000000000000000000000000000000

00000000000000000000000000000001

00000000000000000000000000000010

00000000000000000000000000000011

......

11111111111111111111111111111111

这样,我们可以得知1个int我们可以存储2^32种数字,同理,1个short(2个字节)我们可以存储2^16种数字。由此可见,每种数据类型所占的存储空间不一样。在我们早期的计算机中,存储空间很小,内存是很珍贵的,能省则省,所以我们给数据分配合适的存储空间,就好比说人的年龄不会超过200岁,使用int类型开辟存储就显得有些大材小用了。

数据类型的使用

//数据类型 变量名=初始值
char ch='w';
int weight=100;
int salary=200000; 

以上述代码第一个char类型举例,它的意思代表的是:向计算机 用char字符数据类型 申请一块1个字节的存储空间,并为该空间取名为ch,并在该空间内存储‘w’。

总结

存在这么多数据类型,其实是为了更加丰富的表达生活中的各种值。

标签:字节,int,数据类型,long,printf,sizeof,浅析
来源: https://blog.csdn.net/m0_62516234/article/details/120913075

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有