Kevin Duke Kevin Duke - 2 months ago 10
C++ Question

std::cin in input with spaces?

#include <string>

string input;
cin >> input;


The user wants to enter "Hello World". But
cin
fails at the space between the two words. How can I make
cin
take in the whole of
Hello World
?

I'm actually doing this with structs and
cin.getline
doesn't seem to work. Here's my code:

struct cd
{
string CDTitle[50];
string Artist[50];
int number_of_songs[50];
};

cin.getline(library.number_of_songs[libNumber], 250);


This yields an error. Any ideas?

Answer

You have to use cin.getline():

char input[100];
cin.getline(input,sizeof(input));