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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Annamaria
1 / 1 / 0
Регистрация: 21.03.2012
Сообщений: 15
#1

Создать файл состоящий из n целых чисел (прокомментировать код) - C++

22.06.2012, 16:50. Просмотров 421. Ответов 4
Метки нет (Все метки)

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
#include <iostream>
#include <fstream>
using namespace std;
 
int main () {
    ofstream out ("f.dat", ios::binary);
    int n;
    cout << "n=";
    cin >> n;
    int beg, end;
    cout << "beg=";
    cin >> beg;
    cout << "end=";
    cin >> end;
    for (int i = 0; i < n; i++) {
        int x;
        cin >> x;
        out.write((char*)&x, sizeof(x));
    }
    out.close();
    ifstream in ("f.dat", ios::binary);
    for (int i = 0; i < n; i++) {
        int x;
        in.read((char*)&x, sizeof(x));
        if (x <= beg || x >= end)
            cout << x << " ";
    }
    out.close();
    return 0;
}
задание к программе-создать файл состоящий из n целых чисел . вывести на экран все числа данного файла не попадающий в заданный интервал
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
22.06.2012, 16:50     Создать файл состоящий из n целых чисел (прокомментировать код)
Посмотрите здесь:

C++ C++ Дан одномерный массив состоящий из целых чисел.
C++ Дан одномерный массив состоящий из целых чисел. C++
Дан одномерный массив,состоящий из n целых чисел. C++
C++ дан массив, состоящий из n целых чисел (n<=10)
Создать файл, записать 10 целых чисел и вычислить количество нулей C++
Дан файл целых чисел с элементами A(i), i = 0, ., N–1 (N — размер файла) (упростить\улчшить код) C++
Как создать двоичный файл и записать в него n целых чисел? C++
Создать двоичный файл и записать в него n целых чисел C++
Создать текстовый файл, состоящий из десятичных чисел без знака C++
Ввести массив из 11 чисел и создать новый, состоящий из чисел, стоящих до минимального C++
C++ Создать файл целых чисел содержащий сумму чисел из каждой строки исходной таблицы
Создать файл, в который записать n целых чисел C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
programm1r
 Аватар для programm1r
46 / 45 / 1
Регистрация: 19.06.2012
Сообщений: 134
22.06.2012, 16:58     Создать файл состоящий из n целых чисел (прокомментировать код) #2
Цитата Сообщение от Annamaria Посмотреть сообщение
ofstream out ("f.dat", ios::binary);
Вывод в файл, ios::binary - бинарный формат
Цитата Сообщение от Annamaria Посмотреть сообщение
ifstream in ("f.dat", ios::binary);
Ввод из файла. Все остальное по аналогии с вашими предыдущими примерами
Annamaria
1 / 1 / 0
Регистрация: 21.03.2012
Сообщений: 15
22.06.2012, 17:02  [ТС]     Создать файл состоящий из n целых чисел (прокомментировать код) #3
C++
1
2
out.write((char*)&x, sizeof(x));
    }
мне вот это не понятно
programm1r
 Аватар для programm1r
46 / 45 / 1
Регистрация: 19.06.2012
Сообщений: 134
22.06.2012, 17:10     Создать файл состоящий из n целых чисел (прокомментировать код) #4
Цитата Сообщение от Annamaria Посмотреть сообщение
C++
1
out.write((char*)&x, sizeof(x));
Это как раз и есть запись в файл, функция write требует указатель на область данных, которые надо записать и размер этих данных. (char *) - указатель (адрес) на область памяти, элементы которой равны 1 байту. sizeof(x) - размер этих элементов, т.е. =1.
Цитата Сообщение от Annamaria Посмотреть сообщение
ofstream out ("f.dat", ios::binary);
А это открытие файла в режиме для записи, только открытие.
David Sylva
 Аватар для David Sylva
1284 / 946 / 51
Регистрация: 17.05.2012
Сообщений: 2,687
22.06.2012, 17:21     Создать файл состоящий из n целых чисел (прокомментировать код) #5
programm1r ты ошибаешься. ((char*)) &x) - это операция приведения типа, которые являются обязательными при использовании буфера.
Yandex
Объявления
22.06.2012, 17:21     Создать файл состоящий из n целых чисел (прокомментировать код)
Ответ Создать тему
Опции темы

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