169 похожих чатов

Помогите разобраться куда деётся утекшая память? ситуация. написали функцию работающую со

строками в которой выделяется память, малоком(функция аналог фунции trim с C#)

загнал функцию в тесты библиотеки check.h. то есть внутри теста вызывал, сравнивал результат с другой строкой, нарочно не очищал память. дальше файл проверял на утечки - все чисто. проверял и ликсом и валгриндом. утечек нет!

есть две мысли:
1. потерянные куски памяти пропадают в других потоках, в которых возможно вызывает тесты библиотека check.h
2. библиотека сделана таким образом что при завершении функции чистит сама выделенную динамическую память.
склоняюсь к первому варианту, что думаете? ну не бывает же чудес…

9 ответов

31 просмотр

Ты серьезно сейчас в сишном чате описываешь маллок функцией шарпа?))))

Про потоки бред сивой кобылы.

Andrey-Andrey Автор вопроса
Денис Rabbit
Ты серьезно сейчас в сишном чате описываешь маллок...

маллоком возвращаю строку код пишу на си, функция аналогична функции си шарпа, такое было задание. тогда объясни кто чистит память память? могу прикрепить скрины

Andrey Andrey
маллоком возвращаю строку код пишу на си, функция ...

Да не, зачем скрины, ща хрустальный шар достану

Still reachable в валгринде тоже 0?

maybe with valgrind

nothing ㅤ
maybe with valgrind

просто странно, что чел говорит про утечки в каком-то коде, а валгриндом проверяет утечки на каком-то тесте

Есть мысль что обсуждать это без кода безсмысленно

А, это да, можно без кода. Вариант один - ты просто не умеешь пользоваться этим инструментарием, и делаешь что-то неверно

Похожие вопросы

Обсуждают сегодня

а через ESC-код ?
Alexey Kulakov
29
30500 за редактор? )
Владимир
47
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
13
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
program test; {$mode delphi} procedure proc(v: int32); overload; begin end; procedure proc(v: int64); overload; begin end; var x: uint64; begin proc(x); end. Уж не знаю...
notme
6
Как передать управляющий символ в открытую через CreateProcess консоль? Собсна, есть процедура: procedure TRedirectThread.WriteData(Data: OEMString); var Written: Cardinal;...
Serjone
4
вы делали что-то подобное и как? может есть либы готовые? увидел картинку нокода, где всё линиями соединено и стало интересно попробовать то же в ddl на lua сделать. решил с ч...
Victor
8
Ребят в СИ можно реализовать ООП?
Николай
33
Подскажите пожалуйста, как в CustomDrawCell(Sender: TcxCustomGridTableView; ACanvas: TcxCanvas; AViewInfo: TcxGridTableDataCellViewInfo; var ADone: Boolean); получить наз...
A Z
7
Карта сайта