내일배움캠프-언리얼

[내일배움캠프 - 언리얼] DAY 10 - 포인터 실습

이시보 2025. 12. 10. 10:35

포인터로 함수 호출, 숫자를 출력

#include <iostream>

using namespace std;

void PrintNumber(int* pNumber)
{
	cout << *pNumber; // pNumber 주소의 값 출력
}

int main()
{
	int numbers[10] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };

	for (int i : numbers) // 배열 numbers의 요소 for문으로 탐색
	{
		PrintNumber(&i);
	}

	return 0;
}

포인터와 레퍼런스로 두 수를 교환하는 함수를 제작

#include <iostream>

using namespace std;

void SwapByPointer(int* pA, int* pB)
{
	if (pA == nullptr || pB == nullptr) return; // 예외처리
	int temp;
	temp = *pA;
	*pA = *pB;
	*pB = temp;
}

void SwapByReference(int& refA, int& refB)
{
	int temp;
	temp = refA;
	refA = refB;
	refB = temp;
}

int main()
{
	int A = 1;
	int B = 2;

	cout << "초기 상태 : " << A << " " << B << endl;

	SwapByPointer(&A, &B);

	cout << "Swap by pointer : " << A << " " << B << endl;

	SwapByReference(A, B);

	cout << "Swap by reference : " << A << " " << B << endl;

	return 0;
}