首页 > 其他 > 详细

数据类型

时间:2018-05-28 13:30:03      阅读:176      评论:0      收藏:0      [点我收藏+]

首先,思考一下c/c++为什么引入数据类型,数据类型的本质是什么?

数据类型这个概念不光是c/c++里边有,C#、.net、Java都有,只不过是类型弱和强的区别。其实,是为了在编译器中方便表达现实生活中的事和物。如:定义一个int类型的变量,就告诉了编译器要分配4个字节的内存,所以数据类型的本质也是固定大小内存的别名。

代码:

 int a = 0;  //这里告诉编译器分配4个字节的内存
 int b[5];   //这里告诉编译器分配4*5个字节的内存
 printf("b:%d,b+1:%d\n", b, b + 1);
 printf("&b:%d,&b+1:%d\n", &b, &b + 1);

输出结果:

b:14679612,b+1:14679616    
&b:14679612,&b+1:14679632

大部分BUG的产生都是因为概念的不清晰。

这里分清楚b 与&b的区别:

b:代表数组首元素的地址   如:一条街的第一个商铺的名(一个商铺4个字节内存)

&b:代表整个数组的地址    如:一条街街名

那么:

b+1: 从第一个商铺偏移到下一个商铺  故:b到b+1地址偏移4  (b:14679612      b+1:14679616  )

&b+1:从一条街偏移到下一条街   故:&b到&b+1地址偏移20 (&b:14679612,&b+1:14679632)

 

数据类型

原文:https://www.cnblogs.com/kevinsharif/p/9099554.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!