인프런 커뮤니티 질문&답변
[10:30]
작성
·
212
0
#include<iostream>
#include<string>
int main() {
using namespace std;
cout << "Your name? : ";
string name;
cin >> name;
cout << "Your age? : ";
string age;
cin >> age;
cout << name << " " << age << endl;
return 0;
}
1)
jack jack을 입력받았을 때 왜 마지막줄의
cout<<name<<" "<< age<<endl;
부분은 실행(출력)이 되지 않나요??
2)
입력으로 j1 j2 j3를 입력했을 때 한줄씩 디버깅하면 변수값이
age= j1, name=j2가 나옵니다.
실행파일에서는 age가 j1, j2로 나오는 이유를 모르겠습니다.
답변 1
0
안녕하세요?
강의에 설명되어 있습니다.(10:10~) 각각의 cin은 white space로 입력을 구분하며, 버퍼를 통해서 전달되기 때문에
1)
jack 을 cin >> name; 에서 받고,
나머지 jack 을 cin >> age; 에서 받는 것입니다.
cout 부분은 정상적으로 출력이 되기 때문에 jack jack이 출력된 것입니다.
2)는 같은 질문인데, 1)을 이해하셨다면 이해하실겁니다. 스스로 적용해볼 기회가 되었으면 좋겠네요.





