1. 포인터와 포인터 주소
- 포인터 : 변수의 주소
- 포인터 변수 : 변수의 주소를 저장할 때 사용하는 변수
- 자료형을 먼저 쓰고 변수명 앞에 간접 연산자 *를 붙임
- ex) int *a;
- 변수의 주소를 알아낼 때는 변수 앞에 번지 연산자 &를 붙임
- ex) b = &a;
- 실행문에서 포인터 변수에 간접 연산자 *를 붙이면 해당 포인터 변수가 가리키는 곳의 값을 말함
- ex) c = *a;
- 포인터 변수를 필요에 의해 동적으로 할당되는 메모리 영역인 힙 영역에 접근하는 동적 변수
- 포인터 변수 용도
- 연결된 자료 구조를 구성하기 위해 사용
- 동적으로 할당된 자료 구조를 지정하기 위해 사용
- 배열을 인수로 전달하기 위해 사용
- 문자열을 표현하기 위해 사용
- 커다란 배열에서 요소를 효율적으로 저장하기 위해 사용
- 메모리에 직접 접근하기 위해 사용
main()
{
int a = 50; // 정수형 변수 a를 선언하고 50으로 초기화
int *b; // 정수형 변수가 저장된 곳의 주소를 기억할 포인터 변수 b를 선언
b = &a; // 정수형 변수 a의 주소를 포인터 변수 b에게 기억시킨다. b에는 a의 주소가 저장됨
*b = *b + 20; // b가 가리키는 곳의 값에 20을 더한다. b가 가리키는 곳이 a이므로 결국 a의 값도 바뀐다.
printf("%d, %d", a, *b); // 70, 70
}
📖 Reference
2023 시나공 정보처리기사 필기 : 네이버 도서
네이버 도서 상세정보를 제공합니다.
search.shopping.naver.com
728x90
반응형
'Certificate > 정보처리기사' 카테고리의 다른 글
| [4과목 프로그래밍 언어 활용] 프로그래밍 언어 활용 - 142. 절차적 프로그래밍 언어 ~ 143. 객체지향 프로그래밍 언어 (0) | 2025.11.20 |
|---|---|
| [4과목 프로그래밍 언어 활용] 프로그래밍 언어 활용 - 140. Python의 기초 (0) | 2025.11.20 |
| [4과목 프로그래밍 언어 활용] 프로그래밍 언어 활용 - 132. 데이터 타입 ~ 138. 배열과 문자열 (0) | 2025.11.20 |
| [4과목 프로그래밍 언어 활용] 서버 프로그램 구현 - 131. 패키지 소프트웨어 (Package Software) (0) | 2025.11.20 |
| [4과목 프로그래밍 언어 활용] 서버 프로그램 구현 - 130. ⭐ 배치 프로그램 (0) | 2025.11.20 |