1. 변수 선언
// 배열 포인터 : 배열을 가리키는 포인터
// 포인터 배열 : 포인터들이 배열
#include <stdio.h>
int main() {
int a = 10;
int b = 20;
int c = 30;
int d = 40;
int* ptr[4];
ptr[0] = &a;
ptr[1] = &b;
ptr[2] = &c;
ptr[3] = &d;
printf("%d %d %d %d\n", *ptr[0], *ptr[1], *ptr[2], *ptr[3]);
}
2. 배열 선언
// 배열 포인터 : 배열을 가리키는 포인터
// 포인터 배열 : 포인터들이 배열
#include <stdio.h>
int main() {
int arr[4] = { 1, 2, 3, 4 };
int* ptr[4];
for (int i = 0; i < 4; i++) {
ptr[i] = &arr[i];
}
for (int i = 0; i < 4; i++) {
printf("%d ", *ptr[i]);
}
printf("\n");
}
3. 문자열
#include <stdio.h>
int main() {
char strings[3][10] = { "Hello", "World", "Doodle" };
char* p_str[3];
for (int i = 0; i < 3; i++) {
p_str[i] = strings[i];
}
for (int i = 0; i < 3; i++) {
printf("%s\n", p_str[i]); // p_str[i] == &strings[i][0]
}
}
각 행의 첫번째 칸을 가리키는 포인터를 사용하면 Null문자가 나오기 전까지 출력
'Programming > C' 카테고리의 다른 글
prototype (0) | 2020.02.18 |
---|---|
2차원 배열과 배열 포인터 정리 (0) | 2020.02.17 |
배열과 포인터 정리 2 (0) | 2020.02.14 |
배열과 포인터 정리 1 (0) | 2020.02.14 |