【发布时间】:2017-10-01 18:22:22
【问题描述】:
int (*get_2d_array(void))[3] //This Function
{
static int arr[2][3] = { 10, 20, 30, 40, 50, 60 };
return arr;
}
int main()
{
int i, j, row = 2, col = 3;
int (*ptr)[col];
ptr = get_2d_array();
for( i = 0; i < row; i++ )
{
for( j = 0; j < col; j++ )
{
printf("%d ",ptr[i][j]);
}
printf("\n");
}
return 0;
}
这个函数被声明为一个数组,任何人都可以解释这种类型的声明。
函数输出是打印被调用函数返回的数组。
【问题讨论】:
-
将其插入translator。
-
这是一个很棒的工具,但我想要一个详细的答案。正如我所说,我知道输出,但我想知道这个函数是如何工作的?
-
你没有问函数是如何工作的。你问
int (*get_2d_array(void))[3]是什么意思。