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

Размер и выделение памяти под открытие файла. - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Правильно ли построен класс http://www.cyberforum.ru/cpp-beginners/thread349525.html
STRUCT.cpp #include "STRUCT.h" STRUCT::STRUCT() { clrscr(); printf(" Введите количество спортсменов: "); scanf("%d", &count); //Ввод количества участников min = init_athletes(all, count); printf("\n Самый юный участник:\nМесто в реестре: %d\nФамилия: %s\nИмя: %s\nВозраст:"
C++ Можно ли на базе массива реализовать контейнер Можно ли на базе массива реализовать контейнер? Если да, то как это будет происходить? http://www.cyberforum.ru/cpp-beginners/thread349522.html
C++ Заполнить двумерный массив следующим образом: 1 24 25 ... 120 2 ... 26 ... 119
Заполнить двумерный массив следующим образом: 1 24 25 ... 120 2 ... 26 ... 119 ... ... ... ... 1 14 ... ... 110 12 13 36 ... 109
Перенести первые к элементов в конец C++
дан одномерный массив М из 28 элементов. Перенести первые к элементов в конец: М, М,..., М,М,..., М
C++ Составить программу, которая меняет местами две любые строки массива http://www.cyberforum.ru/cpp-beginners/thread349514.html
Дан двумерный массив. Составить программу, которая меняет местами две любые строки массива.
C++ Вывести в файл используя fin Здравствуйте! Считываю что-то через fin>>! Как мне вывести результат в файл!? Если cout то выводить в экран консоли, а как вывести в файл? Заранее благодарен! Добавлено через 1 минуту Так подключаю файл input ifstream fin ("input.txt"); подробнее

Показать сообщение отдельно
-=ЮрА=-
Заблокирован
Автор FAQ
09.09.2011, 16:15     Размер и выделение памяти под открытие файла.
Цитата Сообщение от KorPaEv Посмотреть сообщение
ВСЕМ СПАСИБО ЗА ОТВЕТЫ! Не успел пораньше заглянуть и закончил сам))), все сделал так же...

А по поводу чтения по 4 байта блочно не совсем еще понял, можно поподробнее?
Если данных у тебя много в консоль их сразу cout не выведешь, делай постепенный вывод
аля

C++
1
2
3
4
5
6
7
for(int i = 0,j; i < len_file;i += 4096)
{
   for(j = 0; j < 4096; j++)
        cout<<buffer[j];
   cout<<"\r\n";
   buffer += 4096;//Сдвигаем указатель на 4096
}
- как раз по 4кБ выводить будешь

f_op.read(buffer, len_file);
В buffer - не забывай ноль вконце buffer[ len_file] = '\0';
И закрывай поток сразу
f_op.close();
А потом уж выводи

Касательно размера файла - если ОЗУ хватает, то читай образ в оперативу а не ломай мозг постоянным считыванием из файла, время которое уйдёт на первоначальное время чтения 2 Гб с лихвой покроется постоянным почитыванием 4 кБ как тут "гуру" предлагают...Впрочем решать тебе, копошиться в файле с блошиным чтением или быстро обрабатывать данные из оперативной памяти!

Цитата Сообщение от talis Посмотреть сообщение
На жёстком есть образ DVD хотя бы одной игры (желательно больше 2 Gb)
- касательно этого вместо этого
//длинна файла
int len_file;
запиши
unsigned long len_file - как раз на 4096 Мб хватит
 
Текущее время: 13:34. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru