본문 바로가기

C_C++

2차원 배열에서의 "arr[i]"와 "*(arr+i)"

※ 다양한 형태의 배열 요소 접근 방법

/* two_array2.c */
#include <stdio.h>
int main(void)
{
int a[3][2]={ {1, 2}, {3, 4}, {5, 6} };

printf("a[0]   : %d \n", a[0]);
printf("*(a+0) : %d \n", *(a+0));

printf("a[1]   : %d \n", a[1]);
printf("*(a+1) : %d \n", *(a+1));

printf("a[2]   : %d \n", a[2]);
printf("*(a+2) : %d \n", *(a+2));


printf("%d, %d \n", a[1][0], (*(a+1))[0]);
                                  // a[1][0] == *(a[1]+0) == *(*(a+1)+0)

printf("%d, %d \n", a[1][2], *(a[1]+2));
                                  // a[1][2] == *(a[1]+2) == *(*(a+1)+2)

printf("%d, %d \n", a[2][1], *(*(a+2)+1));
                                  // a[2][1] == *(a[2]+1) == *(*(a+2)+1)

return 0;
}

결과

'C_C++' 카테고리의 다른 글

상수와 기본 자료형  (0) 2010.11.30
C언어의 키워드  (0) 2010.11.29
2차원 배열 이름의 포인터 타입 3  (0) 2010.11.28
2차원 배열 이름의 포인터 타입 2  (0) 2010.11.26
2차원 배열 이름의 포인터 타입  (0) 2010.11.26