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

Объясните в чём ошибка (создать текстовой файл и заполнить целыми числами) - C++

Восстановить пароль Регистрация
 
JiryPK
1 / 1 / 0
Регистрация: 13.11.2010
Сообщений: 17
29.03.2012, 15:34     Объясните в чём ошибка (создать текстовой файл и заполнить целыми числами) #1
Задание: нужно создать текстовой файл и заполнить его 100 целыми числами в интервале от -50 до 50.

Ошибка выдаётся в строке "fp=fopen("input", "w");" , в чём может быть проблема?

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
#include "stdafx.h"
#include <iostream>
#include <stdio.h>
#include <vector>
 
using namespace std;
 
class vec
{
    public:
        vector<int> v;
        unsigned int i;
        int n;
        FILE *fp;
        double input[100];
        
        int inputfile()
        {
            fp=fopen("input", "w");
 
            for(i=0; i<100; i++)
            v.push_back(n= -50 +rand() %50);
        
        fwrite(input, sizeof input, 1, fp);
        fclose(fp);
        }
};
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.03.2012, 15:34     Объясните в чём ошибка (создать текстовой файл и заполнить целыми числами)
Посмотрите здесь:

Есть файл f, c целыми числами. Создать новый файл g где все компоненты файла f в квадрате. C++
C++ Заполнить одномерный массив из 15 элементов целыми числами
Заполнить файл f целыми числами C++
Нужно создать список и заполнить его 10 случайными целыми числами и вывести на экран C++
C++ Заполнить файл последовательного доступа file_A целыми числами
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Algiz
159 / 159 / 13
Регистрация: 23.02.2011
Сообщений: 347
29.03.2012, 15:45     Объясните в чём ошибка (создать текстовой файл и заполнить целыми числами) #2
fopen("some.txt","wt") - открыть для записи как текстовый файл
fopen("some.txt","wb") - открыть для записи как бинарный
Infinity3000
 Аватар для Infinity3000
1057 / 576 / 24
Регистрация: 03.12.2009
Сообщений: 1,255
29.03.2012, 15:51     Объясните в чём ошибка (создать текстовой файл и заполнить целыми числами) #3
MSVS 2010 все компилирует
Миниатюры
Объясните в чём ошибка (создать текстовой файл и заполнить целыми числами)  
cactus09
Чайник
 Аватар для cactus09
69 / 69 / 4
Регистрация: 15.02.2012
Сообщений: 475
29.03.2012, 15:55     Объясните в чём ошибка (создать текстовой файл и заполнить целыми числами) #4
Попробуй
C++
1
fp=fopen("input", "w");
вынести за пределы
C++
1
 int inputfile()
куданибудь по ближе к
C++
1
FILE *fp;
JiryPK
1 / 1 / 0
Регистрация: 13.11.2010
Сообщений: 17
29.03.2012, 16:34  [ТС]     Объясните в чём ошибка (создать текстовой файл и заполнить целыми числами) #5
Ошибку сам нашёл, оказалась очень тупая. Забыл "return 0" в методе написать. Спасибо всем кто помогал.

Добавлено через 30 минут
а не подскажите как после вызова этого файла увеличить каждый элемент в 2 раза?
cactus09
Чайник
 Аватар для cactus09
69 / 69 / 4
Регистрация: 15.02.2012
Сообщений: 475
29.03.2012, 17:01     Объясните в чём ошибка (создать текстовой файл и заполнить целыми числами) #6
JiryPK, Могу ошибаться но может быть так
C++
1
v.push_back(n= (-50 +rand() %50)*2);
JiryPK
1 / 1 / 0
Регистрация: 13.11.2010
Сообщений: 17
29.03.2012, 21:18  [ТС]     Объясните в чём ошибка (создать текстовой файл и заполнить целыми числами) #7
Ну так если в этом же методе не закрывая файл. А если файл закрыть, потом сделать новый метод и в нём открыть этот файл и там каждый элемент увеличить в два раза - такое вообще возможно?
cactus09
Чайник
 Аватар для cactus09
69 / 69 / 4
Регистрация: 15.02.2012
Сообщений: 475
29.03.2012, 21:28     Объясните в чём ошибка (создать текстовой файл и заполнить целыми числами) #8
JiryPK, Ну я думаю да. Тока при записи либо элементы должны быть записаны с использованием какого либо разделяюшего символа (например пробела), либо это должен быть бинарный файл.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.03.2012, 21:52     Объясните в чём ошибка (создать текстовой файл и заполнить целыми числами)
Еще ссылки по теме:

Заполнить файл последовательного доступа f целыми числами,полученными с помощью генервтора случайных чисел. C++
C++ Не получается заполнить массив целыми числами
Заполнить файл f целыми числами, используя генератор случайных чисел C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Van111
кодер с++
208 / 187 / 4
Регистрация: 03.08.2011
Сообщений: 2,585
Записей в блоге: 12
29.03.2012, 21:52     Объясните в чём ошибка (создать текстовой файл и заполнить целыми числами) #9
Цитата Сообщение от JiryPK Посмотреть сообщение
Ну так если в этом же методе не закрывая файл. А если файл закрыть, потом сделать новый метод и в нём открыть этот файл и там каждый элемент увеличить в два раза - такое вообще возможно?
открой файл ,считай все элементы, умножь на два, перезапиши
либо
открой файл два раза в совместном доступе(чтение и запись) считал число, умножил, записал число э то в цикле while(!feof(файл чтения))
Yandex
Объявления
29.03.2012, 21:52     Объясните в чём ошибка (создать текстовой файл и заполнить целыми числами)
Ответ Создать тему
Опции темы

Текущее время: 15:49. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru