码迷,mamicode.com
首页 > 其他好文 > 详细

数据类型

时间:2018-05-28 13:47:10      阅读:152      评论:0      收藏:0      [点我收藏+]

标签:元素   告诉   固定   bsp   引入   内存   类型   数据   区别   

首先,思考一下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)

 

数据类型

标签:元素   告诉   固定   bsp   引入   内存   类型   数据   区别   

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

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!