728x90
안녕하세요! 이번 글에서는 C++ 프로그래밍에서 포인터와 참조자에 대해 자세히 알아보고, 매개변수로서의 사용 예제를 제공하겠습니다.
포인터 (Pointers)
포인터는 메모리 주소를 저장하는 변수입니다. 다른 변수의 메모리 위치를 가리키는 역할을 합니다. C++에서는 포인터를 선언할 때 변수 이름 앞에 '*' 기호를 사용합니다.
다음은 changeValue라는 함수를 정의하고 포인터를 매개변수로 사용하는 예제입니다
void changeValue(int* ptr) {
*ptr = 100;
}
int main() {
int value = 50;
changeValue(&value);
// value는 이제 100입니다.
return 0;
}
- changeValue 함수는 int* 타입의 포인터 ptr을 매개변수로 받습니다. 함수 내부에서 ptr이 가리키는 메모리 위치의 값을 변경하면, 해당 메모리 위치에 접근한 변수도 변경됩니다. main 함수에서 value 변수의 주소를 changeValue 함수에 전달하고, ptr이 가리키는 위치에 100을 저장하면 value의 값도 100으로 변경됩니다.
참조자 (References)
참조자는 변수에 대한 별칭(alias)로 사용됩니다. 즉, 다른 변수의 이름으로 해당 변수를 참조할 수 있도록 합니다. 참조자는 변수를 선언할 때 '&' 기호를 사용합니다.
다음은 swapValues라는 함수를 정의하고 참조자를 매개변수로 사용하는 예제입니다
void swapValues(int& a, int& b) {
int temp = a;
a = b;
b = temp;
}
int main() {
int x = 10;
int y = 20;
swapValues(x, y);
// x는 이제 20, y는 이제 10입니다.
return 0;
}
- 위 예제에서 swapValues 함수는 int& 타입의 참조자 a와 b를 매개변수로 받습니다. 함수 내부에서 a와 b의 값을 교환하면, 해당 변수도 교환됩니다. main 함수에서 x와 y 변수를 정의하고, swapValues 함수에 참조로 전달하면 x와 y의 값이 서로 교환됩니다.
이번 글에서는 포인터와 참조자가 매개변수로 사용되는 예제를 제공했습니다.
다음 글에서는 클래스에 대해서 알아보겠습니다.
감사합니다!
728x90
'[C++] > 프로그래밍 기초' 카테고리의 다른 글
[C++] 프로그래밍 기초 : 클래스의 상속과 정보은닉 (0) | 2023.06.02 |
---|---|
[C++] 프로그래밍 기초 : 클래스 (0) | 2023.06.02 |
[C++] 프로그래밍 기초 : 함수와 매개변수 (0) | 2023.06.02 |
[C++] 프로그래밍 기초 : 조건문과 반복문 (0) | 2023.06.01 |
[C++] 프로그래밍 기초 : 변수와 데이터 타입 (0) | 2023.06.01 |