我有以下方法,它不會捕捉用戶的任何內容。如果我爲藝術家名稱輸入新樂隊,它只捕捉「新」並將樂隊輸出「樂隊」。如果我使用cin.getline()而不捕獲任何內容。任何想法如何解決這一問題?C++ cin問題。不捕捉用戶的輸入
char* artist = new char [256];
char * getArtist()
{
cout << "Enter Artist of CD: " << endl;
cin >> artist;
cin.ignore(1000, '\n');
cout << "artist is " << artist << endl;
return artist;
}
這工作得很好。謝謝你羅傑
std::string getArtist()
{
cout << "Enter Artist of CD: " << endl;
while(true){
if (getline(cin, artist)){
}
cout << "artist is " << artist << '\n';
}
return artist;
}
請使用'std :: string'並且不要使用'new []'。 – avakar