对于指针来说,它指向int类型和指向char类型有没有区别?

对于指针来说,它指向int类型和指向char类型有没有区别?

指针的类型表示指针指向的内存单元的数据所表示的类型。
指向int类型的指针表示指针指向的内存地址保存着的是int类型的数据。
同理,指向char类型的指针表示指向的内存地址中保存的是char类型的数据。
指针本身来讲,只是记录了一个地址,指针的类型表示记录的地址所保存的变量数据的类型,两者的区别仅此而已。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2008-11-20
是有区别的。因为这两种类型变量占用的内存空间是不同的。我们知道当指针变量加1时表示当前的指针向下移动一个“单位”,如果是int型的,就需要移动两个字节,而如果是char型 的,就只需移动一个字节。
第2个回答  2008-11-20
指针本身是一个int类型的变量
它定义的时候的int和char只是说明它能指向什么类型的地址
比如定义int *p,那么p只能存放整型类型的地址
第3个回答  2008-11-21
这个不应该是问题,没有区别,就不会分"指向int类型"和"指向char类型"
第4个回答  2008-11-20
不知道楼上同学所说的整形类型的地址是一个什么概念......

地址就是地址,没有所谓整形char形之分。

int* 和char*的区别体现在访问指针指向内存时的方式,也即所谓的结构化内存访问。比如*(int *)p 和 *(char *)p,访问的显然是不一样的内存。

上面有同学说到++时偏移量的不同,这也是一个方面。本回答被网友采纳
相似回答