728x90
반응형
포인터 상수 에서 배열 이란?
- 배열명이 포인터 상수에 해당하며 배열명의 시작 주소는 변경할 수 없다.
포인터 변수?
- 포인터 변경 가능.
- 메모리 공간이 할당되어야만 사용할 수 있음.
1. 다른 변수의 주소를 연결하여 사용.
2. 메모리 공간을 할당 받아 그 주소를 이용하는 방법도 있음.
포인터 배열과 문자형 2차원 배열의 차이?
- 포인터 배열이란 여러 개의 포인터 변수를 배열로 사용하는 것,
- 포인터 배열은 문자형 포인터 배열을 사용할 때 유용하게 사용된다.
포인터를 이용한 간단한 2차원 배열 덧셈을 하는 코드이다 ▼
#include <stdio.h>
#define ROW 3
#define COL 3 // 세로x가로 를 매크로로 지정
int main()
{
int x [ROW][COL] = {1,2,3,4,5,6,7,8,9};
int y [ROw][COL] = {9,8,7,6,5,4,3,2,1);
int z [ROW][COL];
int i,j,*x1,*y1,*z1;
x1=&x[0][0]; // x1=(int *)x; 와 같다는 뜻
y1=(int *)y; //2차원배열을 1차원 배열로 적용하기 위함
z1=(int *)z; //(int *)캐스트 필요.
for (i=0; i<ROW*COL; i++, x1++, y1++, z1++){
*z1=*x1+*y1;
}
z1 = (int *)z;
for (i=0;i<ROW;i++){
for (j=0;j<COL;j++){
printf("%3d", *z1++);
printf("\n");
}
}
}
728x90
반응형
'Study > C, C+, C++' 카테고리의 다른 글
[C언어] 구조체 배열에 대한 개념. (179) | 2019.06.20 |
---|---|
[C언어] 구조체에 대한 개념정리. (181) | 2019.06.20 |
[C언어] 포인터와 배열에 관한 개념 정리. (178) | 2019.06.20 |
[C언어]포인터 연산에 대한 개념 정리. (182) | 2019.06.20 |