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

free - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ WTL и Visual Studio 2010 http://www.cyberforum.ru/cpp-beginners/thread997327.html
Доброго времени суток. Мне нужно использовать WTL в MSVS 2010. Для 2008-й студии проблем нет, а вот с 2010 разобраться не могу. Кто может подсказать, как все это дело установить? Добавлено через 47 минут Не актуально, нашел.
C++ Не могу разобраться со строками Всем привет. Нужно написать прогу, которая ищет введенное слово в текстовом файле и выводит на экран все предложения содержащие это слово. Я не могу выполнить ввод этого слова, у меня есть примерный ход мыслей, вот он: char *s = new char; s = '\0'; char ch = 0; while (true) { ch = getch(); if (ch == 13) { http://www.cyberforum.ru/cpp-beginners/thread997324.html
C++ как сложить 2 массива
Всем добрый день. На днях начал потихоньку изучать с++, так что знаний по нему пока очень мало) Решил попробовать написать программку, которая из файла брала бы размерность массива, затем читала сам массив, а потом делала сумму этого массива самого на себя. Прочитать размерность и сам массив получилось, а вот при попытке сложить или хотя бы прочитать массив после for'a пишет "нарушение прав...
C++ Определить минимальное значение функции на интервале
На интервале с точностью e(e>0) определить значение одного корня уравнения cos(2/x)*sin(x)+1=0 Определить минимальное значение функции на интервале . Реализовать диалог. Поиск корня уравнения осуществлять с помощью метода касательных.
C++ Рассчитать переходную функция http://www.cyberforum.ru/cpp-beginners/thread997310.html
Рассчитать переходную функцию интегродифференцированного звена первого порядка системы автоматического управления (САУ) по формуле: h(t)=B0 (I-L-t/a1)+ B1/ a1 * L-t/a1 в интервале от t=0 к t=10 с шагом, равным 1 при значении коэффициентов a1 = 1, 3, 5; b1 = 1, 5; b0 = 3. Вычислить таблицу значений h= f(t)
C++ Launcher WOW Здравствуйте всем! Помогите мне пожалуйста. Я создал Лаунчер через VB 2010 Сервер как (WOW) как сделать чтобы (когда заходишь через лаунчер на сервер, коннектился через Launcher) какой нужен код чтобы прорисать IP address сервера для лаунчера? подробнее

Показать сообщение отдельно
VeNick
0 / 0 / 0
Регистрация: 02.11.2013
Сообщений: 5
04.11.2013, 11:55     free
Выделил память под массив(строку), размером 5 элементов.
C++
1
2
3
4
5
6
7
    char *str;
    str = (char*)calloc(5,sizeof(char));
    if (str == NULL)
    {
        cout<<"ERROR"<<endl;
        exit(1);
    }
По мере ввода строки, выделяется дополнительная память.
realloc может возвратить указатель на новую область памяти, поэтому старую нужно очистить.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
    int i;
    char simvol;
    char *strold;
    for (i = 0; (simvol = getchar()) != '\n'; i++)
    {
        if (i%5 == 0  && i != 0)
            {
                strold = str;
                str = (char*)realloc(str, (i+5)*sizeof(char));
                if (str == NULL)
                {
                    cout<<"ERROR"<<endl;
                    exit(1);        
                }
                if(strold != str)
                    free(strold);
            }
        str[i] = simvol;
    }
С помощью отладочных печатей, обнаружил, что ошибка возникает в строчке
C++
1
free(strold);
Что-то там про кучу...
Помогите разобраться.
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 12:37. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru