다음 코드에 대한 설명으로 올바른 것은?

과목: C++

문제 번호: 3360

medium
다음 코드에 대한 설명으로 올바른 것은?
string x = "10";
int y = 20;
string z = x + y;
A. z에는 "30"이 저장된다
B. z에는 "1020"이 저장된다
C. 자동으로 타입 변환이 일어나 정상 실행된다
D. 컴파일 에러가 발생한다

정답: D



⦁ 서로 다른 타입(stringint)을 + 연산자로 연결하려고 하면 컴파일 에러가 발생합니다

⦁ 에러가 발생하는 이유:
⦁ C++에서 stringint의 직접적인 + 연산은 지원되지 않음
⦁ 자동 타입 변환이 일어나지 않음

⦁ 올바른 해결 방법들:
string z = x + to_string(y); (숫자를 문자열로 변환)
int result = stoi(x) + y; (문자열을 숫자로 변환)

💡 학습 팁

이 문제를 포함한 C++ 과목의 모든 문제를 순차적으로 풀어보세요. 진행상황이 자동으로 저장되어 언제든지 이어서 학습할 수 있습니다.