|
10鱼币
第一种:
#include <stdio.h>
int main()
{
int temp[5] = {1, 2, 3, 4, 5};
int (*p2)[5] = &temp;//这里的初始化明白
int i;
for (i = 0; i < 5; i++)
{
printf("%d\n", *(*p2 + i));
}
return 0;
}
第二种:
#include <stdio.h>
int main()
{
char *array[5] = {"FishC", "Five", "Star", "Good", "WoW"};
char *(*p)[5] = &array;//这里的初始化为什么要二次取值?
int i, j;
for (i = 0; i < 5; i++)
{
for (j = 0; (*p)[i][j] != '\0'; j++)
{
printf("%c ", (*p)[i][j]);
}
printf("\n");
}
return 0;
}
int temp[5] = {1, 2, 3, 4, 5};
int (*p2)[5] = &temp;//这里的初始化明白
char *array[5] = {"FishC", "Five", "Star", "Good", "WoW"};
char *(*p)[5] = &array;//这里的初始化为什么要二次取值?
先看红色,再去理解为什么还要加*
|
最佳答案
查看完整内容
int temp[5] = {1, 2, 3, 4, 5};
int (*p2)[5] = &temp;//这里的初始化明白
char *array[5] = {"FishC", "Five", "Star", "Good", "WoW"};
char *(*p)[5] = &array;//这里的初始化为什么要二次取值?
先看红色,再去理解为什么还要加*
|