读书人

关于数组指针的纳闷

发布时间: 2012-09-18 16:21:42 作者: rapoo

关于数组指针的疑惑
f(int a[][2])
{
cout << *a << endl;
}

int main()
{
int a[2][2]={1};
f(a);
return 0;
}
————————————————————————
结果:
0018FF38(数组的首地址)
————————————————————————
‘*’的含义不是理解为取出a所指向地址中的值吗??
那为什么不是1;却还是数组的首地址。

[解决办法]
二维数值一个星号取的是第一个一维数组
要用两个星号才可以取到值
写成 **a 就可以了
[解决办法]

探讨

二维数值一个星号取的是第一个一维数组
要用两个星号才可以取到值
写成 **a 就可以了

[解决办法]
二维数组的地址,和首个一维的地址相同,,

a和*a 的值
虽然都是地址值,,意义不同,,

a相当于二级指针,一个 * 取不出指向的值
[解决办法]
探讨

二维数组的地址,和首个一维的地址相同,,

a和*a 的值
虽然都是地址值,,意义不同,,

a相当于二级指针,一个 * 取不出指向的值

读书人网 >C++

热点推荐