|
3 / 3 / 0
Регистрация: 15.09.2018
Сообщений: 78
|
||||||
Ошибка: Утечки памяти Как исправить?08.11.2018, 02:17. Показов 3388. Ответов 9
Метки нет (Все метки)
Вот задача:
Составьте программу primediv.c, вычисляющую наибольший простой делитель некоторого числа x. Число x вводится со стандартного потока ввода, причём известно, что -2^31 ≤ x < 2^31. Программа должна использовать решето Эратосфена (см. здесь) для построения массива простых чисел. Вот мой код:
Помогите! Как исправить???
0
|
||||||
| 08.11.2018, 02:17 | |
|
Ответы с готовыми решениями:
9
Найти утечки памяти
А как вы находите утечки памяти? |
|
48 / 46 / 18
Регистрация: 27.04.2016
Сообщений: 169
|
||||||
| 08.11.2018, 02:22 | ||||||
|
У Си нет интепретатора, есть компилятор. Не помню, чтобы он выдавал ошибки об утечки памяти, такое вроде бы только Valgrind и ему подобные могут. А выдает, скорее всего у вас предупреждения, ибо нет двух заголовочных файлов.
0
|
||||||
|
3 / 3 / 0
Регистрация: 15.09.2018
Сообщений: 78
|
|
| 08.11.2018, 03:13 [ТС] | |
|
Опечатался. Я имел в виду отладчик Valgrind.
Он мне такую ошибку выдает и добавление заголовочных файлов не помогает((
0
|
|
|
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,928
|
|
| 08.11.2018, 09:29 | |
|
1
|
|
|
3 / 3 / 0
Регистрация: 15.09.2018
Сообщений: 78
|
||||||
| 09.11.2018, 01:27 [ТС] | ||||||
|
Добавил:
valgrind показывает ошибки: ==18986== Memcheck, a memory error detector ==18986== Copyright (C) 2002-2011, and GNU GPL'd, by Julian Seward et al. ==18986== Using Valgrind-3.7.0 and LibVEX; rerun with -h for copyright info ==18986== Command: /home/solution ==18986== Parent PID: 18985 ==18986== ==18986== Invalid write of size 4 ==18986== at 0x4C2D4FF: memset (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==18986== by 0x40077F: main (primediv.c:10) ==18986== Address 0x56d1040 is 0 bytes inside a block of size 3 alloc'd ==18986== at 0x4C2ABED: malloc (in /usr/lib64/valgrind/vgpreload_memcheck-amd64-linux.so) ==18986== by 0x400765: main (primediv.c:9) ==18986== ==18986== ==18986== HEAP SUMMARY: ==18986== in use at exit: 0 bytes in 0 blocks ==18986== total heap usage: 1 allocs, 1 frees, 3 bytes allocated ==18986== ==18986== All heap blocks were freed -- no leaks are possible ==18986== ==18986== For counts of detected and suppressed errors, rerun with: -v ==18986== ERROR SUMMARY: 2 errors from 1 contexts (suppressed: 2 from 2)
0
|
||||||
|
725 / 224 / 73
Регистрация: 01.03.2011
Сообщений: 643
|
||
| 09.11.2018, 09:17 | ||
|
Еще хорошо бы проверять val на корректность перед malloc()
0
|
||
|
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,928
|
|||||||
| 09.11.2018, 10:42 | |||||||
0
|
|||||||
|
3 / 3 / 0
Регистрация: 15.09.2018
Сообщений: 78
|
|
| 11.11.2018, 22:03 [ТС] | |
|
Несмотря на ваши исправления мне выдает:
Превышен лимит по памяти: ограничение -- 16384 Кб
0
|
|
|
4083 / 2681 / 432
Регистрация: 09.09.2017
Сообщений: 11,928
|
|
| 11.11.2018, 23:06 | |
|
На каком тесте?
Возможно, стоит посмотреть в сторону более экономных к памяти алгоритмов.
0
|
|
|
36 / 28 / 9
Регистрация: 11.11.2018
Сообщений: 163
|
|
| 21.11.2018, 04:07 | |
|
valgrind иногда валит ошибки, которые и утечками не являются, и показывает место возникновния ошибки, а не ее причину . кстати, его можно запускать с флагами --xml=yes ---xml-path=/root/report.xml
Добавлено через 2 минуты и да, я его в qtcreator под дебажной версией только запускал, на release он почему-то не реагирует. Добавлено через 2 минуты а иногда ошибки просто не находит, а находит их через раз, так что если ошибку не выдал, это еще не значит, что ее нет
0
|
|
| 21.11.2018, 04:07 | |
|
Помогаю со студенческими работами здесь
10
Как проверить утечки памяти? Утечки памяти в qt приложения как отловить Как избавиться от утечки памяти через 'string' в D5? Как избежать утечки памяти: нюансы использования QList Как отписаться от события чтобы не было утечки памяти Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
Автозаполнение реквизита при выборе элемента справочника
Maks 27.03.2026
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
При выборе "Спецтехники" (Тип Справочник. Спецтехника), заполняется. . .
|
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут.
https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc
Первый документ красиво выглядит, но без схемы.
Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
|
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Программный код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере".
Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита,. . .
|
Команды формы и диалоговое окно
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти".
Программный код из решения ниже на примере нетипового документа "ЗаявкаНаРемонтСпецтехники" разработанного в конфигурации КА2.
В качестве источника данных. . .
|
|
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер
Написал заготовку:
dotnet new console --aot -o UrlHandler
var items = args. Split(":");
var tag = items;
var id = items;
var executable = args;. . .
|
Отправка уведомления на почту при создании или изменении элементов справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере типового справочника "Склады" в конфигурации БП3.
Перед реализацией необходимо выполнить настройку системной учетной записи электронной. . .
|
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений.
9TO2GP2bpX4
a42b81fb172ffc12ca589c7898261ccb/
https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/
Слева синяя линия -. . .
|
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. .
Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
|