Home > Study > C Language > C task > [ex04] 2차원 배열의 리턴

[ex04] 2차원 배열의 리턴
Study Language

문제 설명


#include <stdio.h>

       func(void)
{
    static int a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12};
    return a;
}

void main(void)
{
    printf("%d\n",     func()        );
}

출력 예시


7

정답 코드


#include <stdio.h>

int (*func(void))[4]
{
	static int a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12};
	return a;
}

void main(void)
{
	printf("%d\n", func()[1][2]);
}

/* typedef */

#if 0

#include <stdio.h>

typedef int(*ARRP)[4];

ARRP func(void)
{
	static int a[3][4] = {1,2,3,4,5,6,7,8,9,10,11,12};

	return a;
}

void main(void)
{
	printf("%d\n",     func()[1][2]  );  
}

#endif

메모


printf 내부의 \n 습관화 필요