Skip to content

문제 4 · 값 전달과 addition

문제 4 [2점]

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

cpp
#include <iostream>
using namespace std;

void addition(double x) {
    x++;
}

int main() {
    double x = 1;
    addition(x);
    cout << x;
}
풀이 및 해설

addition 함수의 매개변수 x는 **값 전달pass by value**로 받습니다. 즉 호출 시 인자의 값이 복사되어 전달되므로, 함수 안의 xmainx는 서로 다른 변수입니다.

  • main에서 x = 1.
  • addition(x) 호출 → 함수 내부의 지역 복사본이 1 → 2가 되지만, 함수가 끝나면 사라집니다.
  • mainx는 그대로 1.

따라서 출력은

1

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

PDF