티스토리 뷰

Coding/C

함수 포인터 인자와 리턴 - 4

빠리빵 2018. 6. 9. 15:02
 
#include 

struct _st {
	int num;
	char * name;
};

// ARK를 인쇄하려면?
? ? f2(void) ? ? {
	static struct _st a[2][3] = { {1,"KIM"}, {2,"SONG"}, {3, "KI"} },
								{ {4, "KANG"}, {5, "PARK"}, {6, "LEW"} }};
	return a;
}

? ? f1(int num) ? ? {
	return f2()[num];
}

void main() {
	printf("%s\n", f1(0));
}


/*
// a -> struct _st [2][3] -> 배열이니 [2]를 포인터로
struct _st(*f2(void))[3] {
	static struct _st a[2][3] = {{{ 1,"KIM" },{ 2,"SONG" },{ 3, "KI" }},
								{{ 4, "KANG" },{ 5, "PARK" },{ 6, "LEW" }}};
	return a;
}


//f2() -> a
//f2()[num] -> a[num]
//a -> struct _st [2][3]
//a[num] -> struct _st [3] -> struct _st *
struct _st (*f1(int num)){
	return f2()[num];
}

//f1(0)-> f2()[0] -> a[0]
//f1(0)[4].name + 1 -> 메모리 그려보기
void main() {
	printf("%s\n", f1(0)[4].name + 1);
	system("pause");
}
*/

'Coding > C' 카테고리의 다른 글

const 위치 별 의미  (1) 2018.06.25
함수 포인터 인자와 리턴 - 5  (0) 2018.06.09
함수 포인터 인자와 리턴 - 3  (0) 2018.06.09
함수 포인터 인자와 리턴 - 2  (0) 2018.06.09
함수 포인터 인자와 리턴  (0) 2018.06.09
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
글 보관함