指针是C/C++中很重要的一个概念,对指针操作熟悉的人,一般对程序对内存的访问和使用都比较敏感,多了解底层是很有益处的。一直都使用下标(subscript)来访问数组。一起来尝试用指针吧 !
以二维数组的访问为例,直接给出代码:
#include <iostream>
using namespace std;
int main() {
int ia[3][4] = {};
/*
error codes
for(int **p1 = ia ; p1 != ia + 3 ; p1 ++)
{
for(int *p2 = *p1 ; p2 != *p1 + 4 ; p2 ++)
{
cout << *p2 << endl;
}
}
*/
//correct codes, define p1 as a pointer to array of four ints
//once time
for(int (*p1)[4] = ia ; p1 != ia + 3 ; p1 ++)
{
for(int *p2 = *p1 ; p2 != *p1 + 4 ; p2 ++)
{
cout << *p2 << endl;
}
}
return 0;
}