Как прочитать всю строку от пользователя с помощью cin?

Вот мой текущий код на C ++. Я хотел бы знать, как написать строку кода. Смогу ли я использовать cin.getline (y) или что-то другое? Я проверил, но ничего не нашел. Когда я запускаю его, он работает отлично, за исключением того, что он набирает только одно слово вместо полных строк, которые мне нужны для вывода. Вот с чем мне нужна помощь. Я обозначил это в коде.

Спасибо за помощь

#include <iostream>
#include <cstdlib>
#include <cstring>
#include <fstream>

using namespace std;

int main()
{
    char x;

    cout << "Would you like to write to a file?" << endl;
    cin >> x;
    if (x == 'y' || x == 'Y')
    {
        char y[3000];
        cout << "What would you like to write." << endl;
        cin >> y;
        ofstream file;
        file.open("Characters.txt");
        file << strlen(y) << " Characters." << endl;
        file << endl;
        file << y; // <-- HERE How do i write the full line instead of one word

        file.close();


        cout << "Done. \a" << endl;
    }
    else
    {
        cout << "K, Bye." << endl;
    }
}
18
задан Philip Kirkbride 23 June 2017 в 23:42
поделиться