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

Динамически расширяющийся массив, считывание из файла - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Связать файл с потоком, не уничтожая его http://www.cyberforum.ru/cpp-beginners/thread698281.html
Подскажите пожалуйста: как связать файл с потоком не уничтожая его. Делаю так: ofstream nm; nm.open("myfile.txt"); Пробовал вот так - nm.open("myfile.txt",ios::app); но тогда невозможно...
C++ Вычислить сумму ряда. Результат является приближенным значением функции exp в точке X while do 1) Дано вещественное число X и целое число N (> 0). Найти значение выражения + X + X2/(2!) + … + XN/(N!) (N! = 1•2•…•N). Полученное число является приближенным значением функции exp в... http://www.cyberforum.ru/cpp-beginners/thread698277.html
Найти сумму всех идущих подряд в начале последовательности нечетных чисел C++
дана последовательность из n целых вещественных чисел. первое число в последовательности нечетное найти сумму всех идущих подряд в начале последовательности нечетных чисел. условный оператор не...
Найти исходное число на основании числа, полученного в результате манипуляций с цифрами исходного C++
решение в с++ В трехзначном числе X зачеркнули первую цифру. Когда оставшееся число умножили на 10, а произведение сложили с первой цифрой числа x то получилось число 564. найти x
C++ Не работает программа (структура и стек) http://www.cyberforum.ru/cpp-beginners/thread698232.html
Вот код: #include <cstdlib> #include <iostream> #include <stack> using namespace std; struct sport {
C++ Определить среднюю урожайность пшеницы по районам и по области в целом В области 20 районов. Площади, засеянные пшеницей (в гектарах), и урожай, собранный в каждом районе ( в центнерах), хранятся в двух массивах .Определить среднюю урожайность пшеницы по каждому району... подробнее

Показать сообщение отдельно
Toshkarik
1141 / 858 / 51
Регистрация: 03.08.2011
Сообщений: 2,384
Завершенные тесты: 1
15.11.2012, 10:29
У Вас утечка на утечке. С каждой итерацией Вы теряете 2 + i байта. Да и каждый раз выделять память для одного символа очень накладно. Заведомо выделяйте больше памяти. Примерно так:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
        FILE *f2 = fopen("BankData.txt","rt");
        int i = 0;
        int size = 256;
        char* Data = new char[ 256 ];
            while(!feof(f2)){
                char ch = fgetc(f2);
                Data[i] = ch;
                i++;
                if ( i == size ) {
                   char *temp = Data;
                   Data = new char[ size * 2 ];
                   memcpy( data, temp, size );
                   size *= 2;
                }
            }
            cout<<Data;
            delete[] Data;
 
        fclose(f2);
1
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru