读书人

关于二维数组的访问解决方案

发布时间: 2012-09-13 09:51:52 作者: rapoo

关于二维数组的访问

C/C++ code
#include <iostream>using namespace std;int main() {    int arr[5][3] = {11,28,-5,45,90,35,23,19,0,0,34,56,-35,24,-40};    cout << arr[4][1] << endl        << *((arr+4*3)+1) << endl//费解,不是应该输出arr[4][1]吗        << ((arr+4*3)+1) << endl//费解        << (*(*(arr+4)+1)) << endl;    return 0;}


输出:

24
0012FFC4
0012FFC4
24
请按任意键继续. . .

[解决办法]
arr 是int **
[解决办法]
arr是二维数组,所以arr代表的是一个地址,*arr还是一个地址,**arr才是存放的一个数值.

试试输出如下变量就明白了:
<< arr << endl
<< *arr << endl
<< **arr << endl

读书人网 >C++

热点推荐