Skip to content

문제 4 · 참조 전달과 출력 예측

문제 4 [2점]

아래 코드를 읽고, 출력을 예상하여 작성하세요.

cpp
#include <iostream>
using namespace std;

void multiplication(double& x) {
    x *= 4;
}

int main() {
    double num = 2.0;
    multiplication(num);
    cout << num;
}
풀이 및 해설

매개변수 double& x참조 전달pass by reference입니다. xmainnum을 복사한 것이 아니라 num 자체의 별칭이므로, 함수 안에서 x를 바꾸면 num도 함께 바뀝니다.

  1. num = 2.0
  2. multiplication(num) 호출 → xnum의 별칭
  3. x *= 4num2.0 * 4 = 8.0이 됨
  4. cout << num8 출력 (소수부가 0이므로 8)
8

👉 실습(C++)에서 확인하기

PDF