인프런 커뮤니티 질문&답변
[10:30] 문자열 중간에 빈칸이 있을 때 age로 넘어가는 문제
작성
·
174
0
이해가 안돼서
줄바꿈을 해줘봤어요
<code>
#include <iostream>
#include <string>
using namespace std;
int main()
{
cout << "Your name : " << endl;
string name;
cin >> name;
cout << endl;
// cin.ignore();
cout << "Your age : " << endl;
string age;
cin >> age;
cout << endl;
cout << name << "##" << age << endl;
return 0;
}
<output>
PS C:\coding\tbc_review\TBCPP\Chapter4> g++ *string.cpp*
PS C:\coding\tbc_review\TBCPP\Chapter4> .\a.exe
Your name :
Jack Jack
Your age :
Jack##Jack
==========================
첫 번째 cin에서 빈칸 앞의 Jack을 입력받아서 name에 저장하고
두 번째 cin에서 빈칸 뒤의 Jack을 입력받아서 age에 저장하고 줄바꿈을 만나서
입력을 끝낸다는 건가요?
감사합니다.
답변 1
1
홍정모
지식공유자
cout << endl;
은 입력을 끝낸다기 보다는 줄바꿈 겸 std::flush의 기능입니다.
그 외에 저장이 되었는지 확인은 디버거로 한 줄 한 줄 추적(trace)해보세요.





