数据类型之愚见
更新:HHH   时间:2023-1-7


程序员的大部分时间都在忙于代码的实现,不管是c语言 还是c++ java...都涉及到了数据类型。

但是什么是数据类型呢?失眠的晚上,我思考很久。让大家见笑。

今天就以c语言的数据类型为例,简单聊一下数据类型这个名词吧。


聊到数据类型,就首先聊一下内存。不管写的代码是在unix linux 还是windows上运行,都需要涉及到内存的使用。但是程序中看到的这些只是内存的地址编号,我们将其称为虚拟地址。

而实际的物理内存地址,作为应用程序员是根本看不到的。 在32bit机上,cpu可以访问的虚拟地址编号可以从0~4G-1.每个地址编号可以对应一个字节物理地址空间,也可以不对应具体的物理地址空间。


int var_i=10;

char var_c='m';

每个变量和常量都有自己的地址空间。怎样才能访问这些地址空间里的内容呢?

首先根据变量或常量的名字找到对应的地址空间,然后访问空间里的内容。

这句话没有问题,那从地址空间里取一个字节呢?两个字节呢?还是n个字节呢?

根据什么决定呢? 那就是数据类型。如果是char类型的,那就取一个字节的内容。如果是int,那就取四个字节的内容,如果是short,那就取2个字节的内容。如果是float,那就取四个字节的内容。

int   float都是四个字节,那又如何区分呢?

取出来数据以后,还有字节数据的组织方式,根据不同的类型来组织数据。

这就是数据类型。

总之,数据类型就是访问内存的规则而已。

想起来鲁迅先生说过的。“其实地上本没有路,走的人多了,也便成了路”

其实计算机的世界里本没有数据类型,规则使用多了,便有了数据类型。


欢迎大家交流沟通。愚见










返回开发技术教程...