Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

Не записывает в файл - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ При запуске скомпилированного проекта Visual Studio 2010 возникает ошибка: В ходе построения произошли ошибки http://www.cyberforum.ru/cpp-beginners/thread790604.html
Последние 7 листингов из книги не работают. Не могут они все быть с ошибками. Скорее всего что-то произошло с этой грёбаной Студией. Все разы одно и то же: жму Ctrl+F7 (компиляция) => компилируется,...
C++ По данной строке, определите, является ли она палиндромом По данной строке, определите, является ли она палиндромом. В принципе задача мне понятна, только с кодом проблемы. #include<iostream> #include<conio.h> #include<cstring> using namespace std; ... http://www.cyberforum.ru/cpp-beginners/thread790589.html
C++ Ошибка линковки: ссылка на неразрешенный внешний символ
Всем привет. подскажите пожалуйста, в чём ошибка: error LNK2019: ссылка на неразрешенный внешний символ "class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >...
Стены И Зеркала C++
привет всем ! кто нибудь решал Приложение: инвентарная ведомость из книги Абстракция Данных И Решение Задач На C++. Стены И Зеркала, 3-е Издание Фрэнк М. Каррано, Джанет Дж. Причард ? пришли...
C++ Чтение/запись файла http://www.cyberforum.ru/cpp-beginners/thread790571.html
Вот сделал такую прогу. Очень простая. Создает файл, где есть 100 полей. Каждое поле это строка из индекса, названия, кол-ва (например тут инструментов), цены. например 5 Молоток 10 50.50 И...
C++ Найти наибольшее из значений элементов, расположенных в зарисованых частях матриц Миниатюры Дана квадратная матрица порядка n (n строк, n столбцов). Найти наибольшее из значений элементов, расположенных в зарисованых частях матриц подробнее

Показать сообщение отдельно
ITcrusader
Эксперт С++
176 / 162 / 8
Регистрация: 12.02.2013
Сообщений: 410
20.02.2013, 13:33
Elation, Смари, старина. Ты создаешь файл. Его размер нулевой - все правильно. Далее у тебя происходит запись в этот файл. Но пока не произойдет flush - данные в файле не обновятся. У тебя стоит getch() в коде - она ждет в конце программы нажатия любой клавиши тобой и только потом вызывается деструктор для объекта файла и его размер и содержимое обновляются. Тут все работает корректно.

Вот, я добавил одну строку перед getch и по её выполнении файл обновляется, смотри код ниже:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include "stdafx.h"
#include <list>
#include <conio.h>
#include <iostream>
#include <algorithm>
#include <iterator>
#include <fstream>
using namespace std;
 
int _tmain(int argc, _TCHAR* argv[])
{
    int arr[]={10,20,30,40,50};
    list<int> theList;
    for(int j=0;j<5;j++)
        theList.push_back(arr[j]);
    ofstream outfile("ITER.txt");
    ostream_iterator<int> ositer(outfile," ");
 
    copy(theList.begin(),theList.end(),ositer);
    cout<<endl;
    outfile.close();    // закрываем файл вручную за ненадобностью
    _getch();
    return 0;
}
Полагаю, это должно решить твою проблему
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru