예전것/프로그래밍
배열과 포인터에 관한문제
hangover
2009. 6. 25. 21:54
10 10
20 20
30 30
위의 코드에서 *array[3] 은 분명 3개의 주소를 저장하는 공간이다.
arr1, arr2, arr3의 주소를 저장하였다.
그런데 array[0][0] array[0][1] 이건뭔가?
뒤로 돌아가서
void main()
{
char carr[3] = { 'A', 'B', 'C'};
char *cp = carr;
printf("%c %c %c", cp[0], cp[1], cp[2]);
}
위의 코드에서 cp[0]..이런식으로 접근이 가능하다는것을 배웠었다.
따라서 array[0] <= 이것자체는 arr1의 주소를 담고있다. array[0][0] 하면 0번째 인덱스의 값을 참조
그값은 바로 10이다.
20 20
30 30
arr1, arr2, arr3의 주소를 저장하였다.
그런데 array[0][0] array[0][1] 이건뭔가?
뒤로 돌아가서
void main()
{
char carr[3] = { 'A', 'B', 'C'};
char *cp = carr;
printf("%c %c %c", cp[0], cp[1], cp[2]);
}
위의 코드에서 cp[0]..이런식으로 접근이 가능하다는것을 배웠었다.
따라서 array[0] <= 이것자체는 arr1의 주소를 담고있다. array[0][0] 하면 0번째 인덱스의 값을 참조
그값은 바로 10이다.