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

Динамическим выделением памяти для буфера по объёму файла - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Распознавание русских букв консолью http://www.cyberforum.ru/cpp-beginners/thread568758.html
Доброго времени суток, форумчане! У меня такая проблема. Я бы хотел написать программу с паролем, которая при вводе верного продолжает программу, а иначе запрашивает его вновь. Пароль должен быть на...
C++ Связанные списки. Написать программу, которая строит списочную струкутуру, состоящую из двух линейных списков и связующего элемента. Линейные списки содержат элементы из двух полей: первое-информационное... http://www.cyberforum.ru/cpp-beginners/thread568745.html
C++ Функции пользователя
Даны три квадратных матрицы A, B,C n-го порядка. Вывести на печать ту из них, норма которой наименьшая. Нормой матрицы назовем максимум из абсолютных величин ее элементов
Структуры, некорректный вывод C++
Задание: 1. Описать структуру с именем STUDENT, содержащую следующие поля: • фамилия и инициалы; • номер группы; • успеваемость (массив из пяти элементов). 2. Написать программу, выполняющую...
C++ Двумерные массивы http://www.cyberforum.ru/cpp-beginners/thread568727.html
В данной действительной квадратной матрице порядка N найти наибольший по модулю элемент. Получить квадратную матрицу порядка N-1 путем отбрасывания в исходной матрице строки и столбца, на пересечении...
C++ Одномерные массивы Задан массив, содержащий несколько нулевых элементов. Сжать его, выбросив эти элементы подробнее

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

Динамическим выделением памяти для буфера по объёму файла - C++

08.05.2012, 18:44. Просмотров 907. Ответов 7
Метки (Все метки)

Ув. форумчане,
Вот кусок злосчастного кода:
C++
1
2
3
4
5
in.seekg (0, ios::end); // Позиционируемся в конец файла
unsigned long   len_file = in.tellg(); // Узнаём позицию (= длина файла)
in.seekg (0, ios::beg); // Позиционируемся обратно в начало
char *buffer = new char(len_file);  // Выделяем буфер в памяти под содержимое файла
in.read(buffer,len_file);       // Считываем в буфер
Название: trace.jpg
Просмотров: 118

Размер: 12.2 Кб

Из этого видно, что объем файла 116 (2)
а динамически выделяется только 7 (4)
что вызывает переполнение (5)
Писал в Embarcadero Rad Studio.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru