Search code examples
c++stringgetline

using get line in c++


Okay, I am trying to use the code:

getline(cin, phrase);

When I compile I get the error: no matching function for call to 'getline'

Here is the full code:

#include <iostream>
#include <cstring>
#include <string>
using namespace std;
int main()
{
    cout << "Challenge 1\n" << "Kaitlin Stevers\n" << "Characters and Strings" << endl;
    cout << endl;
    cout << endl;

    char letter[2];
    cout << "Please enter a letter: " << endl;
    cin >> letter;
    cout << "You entered: " << letter << endl;

    char word[5];
    cout << "Please enter a word up to 5 characters long: " << endl;
    cin >> word;
    cout << "The word you entered is: " << word << endl;

    char phrase[100];
    cout << "Please enter a phrase up to 99 characters long: " << endl;
    getline(cin, phrase);
    cout << "The phrase you entered is: " << phrase << endl;

    string lettero;
    cout << "Enter one letter: " << endl;
    cin >> lettero; 
    cout << "The letter you entered is: " << lettero << endl;

    string wordo;
    cout << "Please enter a word: " << endl;
    cin >> wordo;
    cout << "The word you entered is: " << wordo << endl;

    string phraseo;
    cout << "Please enter five words: " << endl;
    getline(cin, phraseo);
    cout << "The words you entered are: " << phraseo << endl;

    return 0;
}

Solution

  • 'no matching function call for getline', cause getline takes a string not a char[] as argument. See cin.getline() if you absolutely want to pass a cha[] as argument.