эквивалент fgets в C ++ - PullRequest
2 голосов
/ 17 мая 2010

Что такое C ++, эквивалентный функции C fgets?

Я смотрел на getline из ifstream, но когда дело доходит до символа конца строки, '\n', он завершается и сбрасывает его. Я ищу функцию, которая просто заканчивается символом конца строки, но добавляет символ конца строки в массив char.

Ответы [ 3 ]

3 голосов
/ 17 мая 2010

Вы все еще можете использовать std::getline(); просто добавьте символ новой строки самостоятельно. Например,

std::ifstream fs("filename.txt");
std::string s;
std::getline(fs, s);

// Make sure we didn't reach the end or fail before reading the delimiter:
if (fs)
    s.push_back('\n');
0 голосов
/ 17 мая 2010

Просто используйте getline в C ++ и добавьте новую строку на себя.

0 голосов
/ 17 мая 2010

После этого вы всегда можете вручную поставить терминатор строки.

...