读书人

怎么判断指向整型的指针和指向整型数组

发布时间: 2013-06-25 23:45:42 作者: rapoo

如何判断指向整型的指针和指向整型数组的指针?
int vector[10],*vp=vector;
int matrix[3][10], *mp=matrix;


vp是指向整型的指针,mp是指向整型数组的指针,那么,一般来说,如何判断指针是指向整型还是指向整型数组?
[解决办法]
第二句应该是 * *mp=matrix
[解决办法]
int matrix[3][10], *mp=matrix;
matrix 是二维数组,相当于三个元素都是a[10]的一维数组int (pmatrix *)[10];其中pmatrix 指向一个三个元素的数组
char * * 是二维指针,相当于指向指针的指针。。
不知道听明白没 类型不一致。
[解决办法]
无法判断 指针只是一个地址 指向内存中的一个点 指针类型决定对这点之后的内存如何解释
[解决办法]
6楼是对的。但确实也可以只是收到警告。就算是写 int *p = 5 也可以只是收到警告(C的历史包袱那个重啊!这也可以说是为什么有C++的原因之一)。现今不会在接受这样的代码了。

至于区分不同维数的指针,int matrix[3][10], *mp=matrix, **mpp=matrix; 可以试试最常用的操作 mp++ 和 mpp++ 变化情况是不同的,看看就知道区别了。

读书人网 >C语言

热点推荐