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

Некоректный вывод в файл (использовал fstream) - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ открытие файла http://www.cyberforum.ru/cpp-beginners/thread41921.html
ifstream is; cout<<endl<<"Name file: "; cin>>name; is.open(name, ios::binary); if(!is.is_open()) { is.close(); system("cls"); //очистка экрана printf("________________________________________________________________________\n\n"); cout<<endl<<"Ошибка открытия файла";
C++ Решение Судоку Здравствуйте! Заранее извеняюсь за повтор, писал такую тему в алгоритмах, но там глухо :( Интересует алгоритм для программы, которая решает Судоку. Те, что обсуждались тут - не подходят. Мне ненравиться программа которая вылетает если однозначных вариантов подстановки нет. Знаю, что нужна рекурсия, попытался написать, но мало что получилось (С++): bool Sudoku::Anser () { if ( http://www.cyberforum.ru/cpp-beginners/thread41908.html
C++ реализация корректного выхода
здравствуйте, извините за заносчивость, но не могли бы вы помочь сделать в 3 и 4 пункте меню так, что когда пользователь вводит имя не существующего файла либо пустой была возможность выйти обратно в меню #include <fstream> #include <iostream> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <iomanip> #include <conio.h> #include <string>
C++ цикл
Помогите пожалуйста. Этот цикл должен уменьшать значения вектор x, если хотя бы одно из его значений , за исключением последнего, больше 1 + и увеличивать, если меньше нуля...Но этот цикл не работает в итоге. for (i = 0; i < n-1; i++) { if (x <= 0) { printf("x<=0!\n"); while(x>0) ...
C++ пример базы данных на с/с++ с использование структур http://www.cyberforum.ru/cpp-beginners/thread41857.html
если у кого есть выложите плиз пример любой базы данных на с/с++ с использованием структур (там полегче какой нибудь) чтобы разобраться
C++ Двумерные массивы, экзамен, онлайн Здравствуйте! Очень нужна помощь на экзамене который состоится 26.06 в пятницу в 10:00 По Москве (9:00 по киеву). Мне понадобится помощь в области двумерных динамических массивов, не более. То есть глубокие познания не потребуються. Помощи буду просить по аське, сюда напишу врядли. Кто готов стучите в аську 449554828, буду несказанно рад))) Помогите спасти стипендию пожалуйста! Буду очень... подробнее

Показать сообщение отдельно
Harradrush
0 / 0 / 0
Регистрация: 25.06.2009
Сообщений: 3

Некоректный вывод в файл (использовал fstream) - C++

25.06.2009, 05:32. Просмотров 1666. Ответов 7
Метки (Все метки)

такая функция
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
25
26
27
28
29
30
31
32
33
34
35
void Save(DATA **pbeg)
{
    system("cls");
 
    DATA *pv; //указатель на структуру
    char filename[200];
    cout<<"Сохранение"<<endl;
    cout<<"Введите путь к файлу: ";
    cin>>filename;
    
    ofstream f;
    f.open(filename,ios::app);
    
    if (!f)
    {
        cout<<"Файл не найден";
        Save(pbeg);
    }
    else
    {
        pv=*pbeg; //pbeg -это указатель на начало списка
        while (pv)
        {
            for (int i=0; i<5; i++)
            {
                f.write(pv->namei[i], strlen(pv->namei[i]));
                f.put(' ');
            }
            f.put('\n');
            pv=pv->next;
        }
        cout<<endl<<"Сохранено"<<endl<<"Нажмите любую клавишу";
        _getch();
    }
}
сама структура:
C++
1
2
3
4
5
6
struct DATA
{
    char namei[5][64];
    DATA *prev;
    DATA *next;
};
Проблема такая, в файл выводится только последний элемент списка. Вроде бы позиция записи почему то сбрасывается на начало файла на каждой итерации while. Не могу понять в чём причина.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 13:58. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru