一维指针输出
#include
#include
int main(int* argc, char* argv[])
{
int a[3][4] = { 1, 0, 2, 4, 3, 8,9 };
int* p;
p = a[0];
int i, j;
/* 输出数组中每个元素的值 */
for (i = 0;
i < 3;
i++)
{
for (j = 0;
j < 4;
j++)
{
printf("a[%d][%d] = %d\n", i, j, *(p+i*3+j));
}
}
return 0;
}
//二维指针输出
# include
int main(void)
{
int a[3][4] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 };
int i, j;
【C语言-使用指针指向此二维数组,然后循环遍历输出】int(*p)[4] = a;
//记住这种定义格式
for (i = 0;
i < 3;
++i)
{
for (j = 0;
j < 4;
++j)
{
printf("%-2d\x20", *(*(p + i) + j));
/*%-2d中, '-'表示左对齐, 如果不写'-'则默认表示右对齐;2表示这个元素输出时占两个空格的空间*/
}
printf("\n");
}
return 0;
}