문제 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**로 받습니다. 즉 호출 시 인자의 값이 복사되어 전달되므로, 함수 안의 x와 main의 x는 서로 다른 변수입니다.
main에서x = 1.addition(x)호출 → 함수 내부의 지역 복사본이1 → 2가 되지만, 함수가 끝나면 사라집니다.main의x는 그대로1.
따라서 출력은