在C语言中,如何使用指针访问多维数组?请参考以下代码:
#include <stdio.h>
int main(void)
{
char board[3][3] = {
{ '1','2','3' },
{ '4','5','6' },
{ '7','8','9' }
};
char *pboard = *board; // 一个指向 char 的指针
for (int i = 0; i < 9; ++i)
printf(" board: %c\n", *(pboard + i));
system("pause");
return 0;
}
执行上面示例代码,得到以下结果:
board: 1
board: 2
board: 3
board: 4
board: 5
board: 6
board: 7
board: 8
board: 9
以下代码使用数组的第一个元素的地址初始化pboard
。然后使用普通指针算法在数组中移动:
char *pboard = *board; // A pointer to char
for(int i = 0 ; i < 9 ; ++i)
printf(" board: %c\n", *(pboard + i));