C++프로그래밍
[C] 2,3 차원 배열 과 포인터
성엽이
2014. 3. 19. 10:54
회사에서 3차원 배열을 쓰는데 인자로 넘겨서 가져왔는데 안되가지구, 급 테스트
얘는 맨날 헷갈리네
#include <stdio.h> int main() { #if 1 int ex[2][2][3] = { {{1,2,3},{4,5,6}}, {{7,8,9},{10,11,12}} }; printf("%d\n", ex[0][0][0]); printf("%d\n", ex[1][0][0]); putchar('\n'); printf("%d\n",(*ex)[0][0]); printf("%d\n",(*ex)[1][0]); printf("%d\n",(*ex)[2][0]); printf("%d\n",(*ex)[3][0]); putchar('\n'); printf("%d\n",(*(ex+1))[0][0]); printf("%d\n",(*(ex+1))[1][0]); putchar('\n'); printf("%d\n",(***(ex+0))+0); printf("%d\n",(***(ex+1))+0); #else int ex[2][3] = {{1,2,3},{4,5,6}}; printf("%d\n", ex[0][0]); printf("%d\n", ex[1][0]); putchar('\n'); printf("%d\n",(*ex)[0]); printf("%d\n",(*ex)[1]); printf("%d\n",(*ex)[2]); putchar('\n'); printf("%d\n",(*(ex+1))[0]); printf("%d\n",(*(ex+1))[1]); printf("%d\n",(*(ex+1))[2]); putchar('\n'); printf("%d\n",(**(ex+0))+0); printf("%d\n",(**(ex+1))+0); #endif getchar(); return 0; } |