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

Выскакивает окно с ошибкой "ConsoleApplication.exe has triggered a breakpoint" при использовании free - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Алгоритм Карацубы http://www.cyberforum.ru/cpp-beginners/thread1165504.html
Помогите, пожалуйста с задачей. Ответ вроде верный, но по времени не проходит. Подскажите что переделать.#include <cstdio> #include <cstring> #define forn(i, n) for (int i = 0; i < (int)(n); i++)...
C++ Программа управления сенсорным дисплеем Здравствуйте, форумчане! Хочу написать программу, которая по нажатию определенной кнопки будет отключать сенсорный экран ноутбука по принципу блокировки сенсорных дисплеев у смартфонов. Имеется... http://www.cyberforum.ru/cpp-beginners/thread1165503.html
Парсер HTML страниц C++
Здравствуйте, Начал учить C++, интересует информация, исходник парсера HTML страницы. Очень был бы благодарен такой информацией Добавлено через 11 минут Хочу попробовать, для начала разобратся...
Отсортировать строки быстрой сортировкой C++
Необходимо отсортировать строку в виде даты, но сортирует не корректно const int N = 10; struct Medicament{ int num; char* name; char form; int price;
C++ Ошибка с присвоением значений к массивам http://www.cyberforum.ru/cpp-beginners/thread1165475.html
Значение функции дроби,не могу присвоить к массиву... не получается подсчет ..Помогите плиз..с этим кусочком.... Код: double drob(int a, int b) { return static_cast<double>(a)/b; } void...
C++ Найдите ошибки class ABC{ int a=3; int b; int c; public: ABC(int n=1) {b=n;} mul() {c=1+a*b;} }; подробнее

Показать сообщение отдельно
Gygocopter
10 / 10 / 5
Регистрация: 05.02.2014
Сообщений: 124

Выскакивает окно с ошибкой "ConsoleApplication.exe has triggered a breakpoint" при использовании free - C++

04.05.2014, 02:47. Просмотров 698. Ответов 6
Метки (Все метки)

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
    char **line = reinterpret_cast<char**>(malloc(4*sizeof(char)));
    for (int i = 0; i < 4; i++)
    { 
        line[i] = reinterpret_cast<char*>(malloc(4*sizeof(char)));
        cin >> line[i];
    }
    for (int i = 0; i < 4; i++)
    {
        cout<< line[i]<<endl;
        free(line[i]);
    }
    free(line);
    _getch();
Программа отрабатывает, и в конце выскакивает окно с ошибкой "ConsoleApplication.exe has triggered a breakpoint"
Если убрать в конце free(line), то работает нормально.
Почему не нужно делать free(line)? А в коде ниже (двумерный массив) нужно free(line)?
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
int n;
    cout << "Введите количество строк: ";
    cin >> n;
    double **line;
    line = reinterpret_cast<double**>(calloc(n, sizeof(double)));
    int* m;
    m = reinterpret_cast<int*>(malloc(sizeof(int)*n));
    for (int i = 0; i < n; i++)
    {
        cout << "Введите длину строки m[" << i << "]=";
        cin >> m[i];
        line[i] = reinterpret_cast<double*>(calloc(m[i],sizeof(double)));
        for (int j = 0; j < m[i]; j++)
        { 
            cout << "line[" << i << "][" << j << "]=";
            cin >> line[i][j];
        }
    }
    cout << "\nРеузльтат обработки: ";
    for (int i = n - 1; i >= 0; i--)
    {
        cout << endl << "Строка " << i << ", элементов "<<m[i]<<": \n";
        for (int j = 0; j < m[i]; j++)
            cout << '\t' << line[i][j];
        free(line[i]);
    }
    free(line);
    free(m);
И еще, кто-нибудь может сказать, почему условие не работает?
C++
1
2
3
4
5
6
7
8
9
10
11
12
    char **line = reinterpret_cast<char**>(malloc(4*sizeof(char)));
    for (int i = 0; i < 4; i++)
    { 
        line[i] = reinterpret_cast<char*>(malloc(4*sizeof(char)));
        cin >> line[i];
        if (sizeof(line[i])>4) line[i] = "002";
    }
    for (int i = 0; i < 4; i++)
    {
        cout<< line[i]<<endl;
        free(line[i]);
    }
Ввожу больше 3 символов и ошибка при выводе.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru