Писал упражнение, написал простейший ввод из файла, а он не работает. Свёл к этому, оно, как ни странно тоже не работает, ещё и выдаёт ошибки C4566 и C4129 (в строке 9). Имя и расположения файла верные, перемещать в другие папки пробовал (адрес в коде, разумеется, менял), пробовал другой диск и даже другую машину... Я в замешательстве. Вывод, разумеется, всегда "Error".
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main() {
string a;
fstream file;
file.open("D:\input.txt");
if (file.is_open()) {
getline(file, a);
file.close();
cout << a;
}
else
cout << "Error";
system("pause");
return(0);
}
Если вам не помог двойной обратный слеш, то возможно вы напутали что-то с путями. Попробуйте так:
int main() {
string a;
fstream file;
file.open(".\\file.txt");//Указываем путь относительно папки проекта,
//если уверены, что файл лежит в корне папки
//можете просто написать имя фала
//file.open("file.txt");
if (file.is_open())
{
while (!file.eof())//Пока не конец файла, так как у вас более одой строчки в файле
{
getline(file, a);
cout << a << endl;
}
file.close();//Закрываем после считывания всех строк
}
else
cout << "Error";
system("pause");
return(0);
}
Виртуальный выделенный сервер (VDS) становится отличным выбором
У меня есть рекурсивная функция,которая вызывает саму себя 5 раз int rec( int **array)Как сделать так,что бы передаваемый массив не менялся в предыдущем...
Гуглиться за 1 минутуВ интеррнете куча информации на этот счет