저는 C++의 초보자입니다. Cygwin 및 일식 7 창에서 사용하고 그냥 문자열을 입력하고 그냥 그것을 인쇄하려면 사용자에게 묻는 프로그램을 작성하려고합니다. 아래 코드가 있습니다.C++ getline (cin, str) 추가 라인을 제공합니다.
#include <iostream>
#include <string>
using namespace std;
int main() {
string mystr;
cout << "What's your name? ";
getline (cin, mystr, '\n');
cout << "Hello " << mystr << ".\n";
return 0;
}
나는 또한 시도 : 그들은 모두 나에게 아래와 같이 넣어 아웃했다
getline(cin, mystr);
.
출력 :
What's your name? nick
Hello nick
.
전체 정류장이 다음 행으로 이동 왜? 어떤 일이 일어 났는지 알려주고 해결 방법을 가르쳐 줄 수 있습니까? 당신이 기대대로 모두 문자열을 인쇄 4.6.3
getline (cin, mystr);
및
getline (cin, mystr, '\n');
GCC에서
'getline (cin, mystr, '\ n');을 사용하는 경우'Hello nick.' 결과 다음에'Hello nick.' 출력이 있습니다. gcc를 사용하고 있습니다 4.7 – OGH
아마도 cygwin이 올바르지 않습니다. 라인 끝 변환을 수행합니다. – jamesdlin
대신 MinGW를 사용해야합니까? – user2146963