사용자의 입력을 특정 방식으로 얻는 프로그램을 작성하려고합니다. 먼저 공백이없는 단어를 입력합니다. 그런 다음 공간을 포함 할 수있는 다른 단어를 입력합니다. 그리고 프로그램은 2 워드를 별도로 출력합니다. 예를 들어C++ Cin 뒤의 Getline
, 내가 입력 "톰 게으른 소년"그럼 프로그램 출력 "톰 : 게으른 소년"
int main(){
string a;
cin >> a;
string b;
getline(cin, b);
cout << a << ":" << b<< endl;
}
내가의 getline을 사용하여 시도 여기
내가 할 시도한 것입니다 "Tom : 게으른 소년"
"Tom (많은 공간)에 게으른 소년"을 입력하면 "Tom : (많은 공간) 게으른 소년" 과 I가 출력됩니다. 그 공간을 원하지 마라. 이 작업을 수행하는 더 좋은 방법이 있습니까?
cin 뒤에 문자열을 편집해야하는 몇 가지 방법이 있지만 입력 단계에서 바로 문제를 해결할 수 있습니까?
'std :: cin >> std :: ws;'는 스트림에서 선행 공백을 제거합니다. – dyp
@dyp 당신은 최고의 답을 가지고 있습니다. 그렇게 게시해야합니다. – ooga
@dyp 동의하며, 간단하고 잘 작동합니다. 고맙습니다. – user3545752