티스토리 뷰
#include// 40을 출력하려면? int *f1(void) { static int a[4] = { 1,2,3,4 }; return a; } int *f2(void) { static int a[4] = { 10,20,30,40 }; return a; } int *(*fa[2])() = { f1, f2 }; int f4(void) { return 1; } ?? func1(void) { return fa; } ? ? func2( ?? p ?? ) { return func1()[p()]; } void main(void) { printf("%d\n", func2(f4) ? ? ); } /* int *f1(void) { static int a[4] = { 1,2,3,4 }; return a; } int *f2(void) { static int a[4] = { 10,20,30,40 }; return a; } int *(*fa[2])() = { f1, f2 }; int f4(void) { return 1; } // fa -> int *(*[2])() -> 배열이니까 int *(**)()로 변환 int *(**func1(void))(){ return fa; } // func1() -> fa리턴 -> int *(*[2])() type // func1()[] -> int *(*)() type ---> int *(*func2( p ))(){ // [ ] 안에는 int가 들어감 -> int p() int *(*func2(int p ()))(){ return func1()[p()]; } // func2(f4) -> func2(1) -> func1()[1] -> fa[1] -> f2 // func2(f4)() -> f2() -> a // func2(f4)()[3] -> a[3] -> 40 void main(void) { printf("%d\n", func2(f4)()[3] ); system("pause"); } */
'Coding > C' 카테고리의 다른 글
const 위치 별 의미 (1) | 2018.06.25 |
---|---|
함수 포인터 인자와 리턴 - 4 (0) | 2018.06.09 |
함수 포인터 인자와 리턴 - 3 (0) | 2018.06.09 |
함수 포인터 인자와 리턴 - 2 (0) | 2018.06.09 |
함수 포인터 인자와 리턴 (0) | 2018.06.09 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- Sobel
- canny
- direction detection
- hough transform
- 영상처리
- Line Detection
- morphology
- OpenCV
- Filter
- equalizing
- dilation
- pyrDown
- morphological operation
- adaptive thresholding
- laplacian of gaussian
- erosion
- difference of gaussian
- 캐니 엣지
- gradient
- canny operator
- pyrUp
- Low pass filter
- high pass filter
- segmentation
- upsampling
- mean filter
- bilateral filter
- top hat
- median filter
- black top hat
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
글 보관함