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

Копирование файлов - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Обьясните пожалуйста http://www.cyberforum.ru/cpp-beginners/thread341942.html
/*Эта программа преобразует галлоноы в литрыс помощью чисел с плавающей точкой.*/ #include <iostream> using namespace std; int main() { double gallons,liters; cout<<"Введите...
C++ Помогите разобраться с switch Вот код программы: int i_1x; i_1x = 0; char a_n; ifstream input("input.txt"); input >> a_n; switch (a_n) http://www.cyberforum.ru/cpp-beginners/thread341914.html
C++ Видимость в классах
Дана программа #include<iostream> using namespace std; class a {protected: int a1; public: void fc() {a1=5;cout<<a1<<endl;
C++ Потоки. Ввод данных.
Если согласится на ввод второго человека, пропускается ввод его имени... вроде ввод все правильно, не знаю в чем беда :wall: #include"stdafx.h" #include <iostream> using namespace std; class...
C++ Проблема с открыванием http://www.cyberforum.ru/cpp-beginners/thread341886.html
У меня компилятор Dev-C++ версии 4.9.9.2 набрал текст скомпилировал удачно Компилятор: Default compiler Выполнение g++.exe... g++.exe "C:\Documents and Settings\777\Мои документы\Мои...
C++ Построение графика по заданному математическому закону я только недавно изучаю С++, на работе поставили задачу реализовать построение графика по заданному математическому закону: An = An-1 + (1/m)*СO, где n и n-1 это соответственно предыдущий и следущий... подробнее

Показать сообщение отдельно
talis
791 / 543 / 37
Регистрация: 11.05.2010
Сообщений: 1,298
Записей в блоге: 1
14.08.2011, 20:41
co6ak, если вас правильно понял, то вы хотите тупо прочитать весь файл целиком в оперативку. Вот, набросал на C:

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
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include <stdlib.h>
#include <stdio.h>
 
int main()
{
    FILE * fd = fopen( "input.txt", "rb" );
 
    if( !fd )
    {
        fputs( "Could not open file for read - check if the file exists and if you have permission to read it.", stderr );
        return -1;
    }
 
    // перемотать на конец файла
    fseek( fd, 0, SEEK_END );
 
    // получить размер файла
    long file_size = ftell( fd );
 
    // буфер под весь файл
    char * buffer = (char*) malloc( file_size );
 
    if( !buffer )
    {
        fclose( fd );
        fputs( "Could not allocate memory for file buffer. File could be empty or too large.", stderr );
        return -1;
    }
 
    // перейти на начало файла
    fseek ( fd , 0, SEEK_SET );
 
    if( file_size != fread( buffer, 1, file_size, fd ) )
    {
        free( buffer );
        fclose( fd );
        fputs( "Read data size is not equal to actual file size.", stderr );
        return -1;
    }
 
    fclose( fd );
 
    /* файл теперь в памяти */
 
    // разделяй, упрощай, выполняй...
    // например, вывести его на stdout
    puts( buffer );
 
    free( buffer );
 
    return 0;
}
Удачи.
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru