•
역할
◦
열의 개수가 같은 이차원 배열의 메모리 주소를 저장하는 역할
◦
열의 개수가 고정된 임의의 행을 생성하여 다룰 수 잇다.
•
형식 : 3개의 열을 가지는 경우
데이터형 (*변수명)[열의 개수];
→ int (*ptr)[3];
•
활용
◦
이차원 배열의 메모리 주소를 저장
◦
이차원 배열을 함수의 매개변수로 전달할 때
◦
열의 개수가 고정인 임의의 행을 다룰 때
•
배열 포인터의 활용(1)
이차원 배열을 다룰 때 사용
// 이차원 배열을 다룰때 사용하는 예
#include <stdio.h>
int main(void){
int array[2][3] = {{10, 20, 30}, {100, 200, 300}};
int (*ptr)[3];
int i;
ptr = array;
for(i = 0; i < 2; i++){
printf("%d %d %d\n", ptr[i][0], ptr[i][1], ptr[i][2]);
}
return 0;
}
C
복사
•
배열 포인터의 활용(2)
이차원 배열을 매개변수로 전달할 때
//이차원 배열을 매개변수로 전달할 때
#include <stdio.h>
// 행의 대한 정보
void add(int (*ptr)[3], int count){
int i, j;
for(i = 0; i < count; i++){
for(j = 0; j < 3; j++){
++ptr[i][j];
}
}
}
int main(void){
int array[2][3] = {{1, 2, 3}, {4, 5, 6}};
int i, j;
add(array, 2);
for(i = 0; i < 2; i++){
for(j = 0; j < 3; j++){
printf("%d", array[i][j]);
}
putchar('\n');
}
return 0;
}
C
복사
•
배열 포인터의 활용(3)
열의 개수가 고정인 임의의 행을 생성