cin.ingore() has a default value of 1 for its parameter, so it's equivalent to cin.ignore(1). cin is your console input source, i.e. whatever the user types in. So, let's say your program prompts the user to enter their name:
cout<<"Please enter your name: "<<endl;
and the user entered:
Mike\n
(The \n is an invisible newline character that is entered when the user hits return.) Now, if you used this as your next statement in your program:
cin.ignore(1);
the remaining input would look like this:
ike\n
which you could then read into a variable that was previously declared:
cin>>name;
Since cin>> is defined to stop reading input when it encounters any whitespace(spaces, tabs and newlines), the variable name will contain 'ike'. That means the remaining input is:
\n
That remaining input can cause problems when you try to read some additional input from the user later on. Any additional input from the user gets in line behind the remaining input. cin.ignore() is often used to skip that \n that is left over in the input.