Я хочу, чтобы следующие значения были записаны в файл с помощью ostream???
int main ()
{
FILE * pFile;
pFile = fopen ("myfile.txt","w");
if (pFile!=NULL)
{
fputs ("fopen example",pFile);
fclose (pFile);
}
pFile<< "r "<<" " <<"ggjjsss" <<'_'<<"gggjj"<< " " << "HLLO " <<endl;
}
Я получаю следующую ошибку.. ошибка: недопустимые операнды типов 'FILE*' и 'const char [3]' для двоичного 'operator‹‹'
Ответ 1 · рейтинг 2 · iammilind
Поскольку вы имеете дело с FILE, я бы сказал, что это ошибка ofstream, а не ошибка ostream. :) FILE - файловый ввод-вывод в стиле C, для которого operator << не перегружен.
Вы должны использовать объект ofstream, для которого operator << перегружен в библиотеке.
#include<fstream>
ofstream File("myfile.txt");
File<< "r "<<" " <<"ggjjsss" <<'_'<<"gggjj"<< " " << "HLLO " <<endl;
Ответ 3 · рейтинг 1 · friendzis
Ты смущен. В классическом смысле C "поток" - это просто то, из чего вы можете читать/записывать. В С++ "потоки" - это специальные объекты, которые соответствуют очень специфическому интерфейсу.
Оператор потока ‹‹ доступен только в C++, поэтому было бы очень логично не ожидать, что он будет работать с классическими библиотеками C.