Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Что означает данное выражение на C
|
|||
|---|---|---|---|
|
#18+
griSvalПочему? А как по-твоему: почему в ячейке ОЗУ заряд должен самопроизвольно рассасываться только потому, что к ней больше никто не обращается? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2015, 11:26 |
|
||
|
Что означает данное выражение на C
|
|||
|---|---|---|---|
|
#18+
griSvalА почему 500 почему не ноль. Потому что никто не обещал обнулять память при освобождении. Что там было, то и осталось. griSvalДля меня это нонсенс память же освобождена почему она сохраняется вот в чем вопрос. Это на усмотрение менеджера памяти ОС. Работает так как быстрее: может совсем освободить, а может просто пометить память как свободную и использовать при следующем выделении памяти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2015, 11:34 |
|
||
|
Что означает данное выражение на C
|
|||
|---|---|---|---|
|
#18+
Dimitry SibiryakovА как по-твоему: почему в ячейке ОЗУ заряд должен самопроизвольно рассасываться только потому, что к ней больше никто не обращается? Да хорошо, никто не обращается тогда, еще один вопрос? Если адрес ячейки никуда не девается, указатель все так же на нее ссылается и значение не обнуляется, как понять освободилась память или нет. Ведь точно так же мы можем просто присвоить *pn иное значение не освобождая память. Зачем оно вообще нужно? З.Ы.: Я в принципе догадываюсь, но просто хочется знать, что другие думают по этому поводу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2015, 12:17 |
|
||
|
Что означает данное выражение на C
|
|||
|---|---|---|---|
|
#18+
griSvalкак понять освободилась память или нет. Вызвал free() или delete (в зависимости от того как выделял) и считай что память освободилась. Для твоей проги этой памяти больше не существует. А то что у тебя есть указатель на эту память, то по-хорошему его на обнулить чтобы гарантированно получить исключение если случайно где-то в коде по нему обратишься. Код: plaintext 1. 2. 3. 4. griSvalЗ.Ы.: Я в принципе догадываюсь, но просто хочется знать, что другие думают по этому поводу. Что-то сомневаюсь что догадываешься. Читай книжки про организацию виртуальной памяти. Там все расписано. Например: Джеффри Рихтер "Windows для профессионалов" Запусти и посмотри что будет Код: plaintext 1. 2. 3. 4. 5. 6. 7. У меня такой результат00343198 123 00343198 345 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2015, 12:36 |
|
||
|
Что означает данное выражение на C
|
|||
|---|---|---|---|
|
#18+
griSvalкак понять освободилась память или нет А как ты вообще себе представляешь "свободное состояние" ячейки ОЗУ, которая может хранить только нуль и единицу?.. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2015, 12:40 |
|
||
|
Что означает данное выражение на C
|
|||
|---|---|---|---|
|
#18+
Модератор: Так, все вопросы ТУТ прекратили, нужно задать вопрос -- создавайте новую тему . Тему закрываю. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2015, 15:43 |
|
||
|
Что означает данное выражение на C
|
|||
|---|---|---|---|
|
#18+
griSvalDimitry SibiryakovА как по-твоему: почему в ячейке ОЗУ заряд должен самопроизвольно рассасываться только потому, что к ней больше никто не обращается? Да хорошо, никто не обращается тогда, еще один вопрос? Если адрес ячейки никуда не девается, указатель все так же на нее ссылается и значение не обнуляется, как понять освободилась память или нет. Ведь точно так же мы можем просто присвоить *pn иное значение не освобождая память. Зачем оно вообще нужно? З.Ы.: Я в принципе догадываюсь, но просто хочется знать, что другие думают по этому поводу. Никак. Выделенная память -- это граф, каждая ячейка выделенной памяти должна быть достижима из других ячеек путём указания на неё, прямого или косвенного. Корни графа могут начинатся в статической или автоматической памяти. Но в С/С++ в общем смысле невозможно понять, занята ли какая-то ячейка выделенной памяти чем-то, или свободна. Если удаляешь память, а какие-то указатели на неё всё ещё ссылаются, то они будут ссылаться на невалидную память и при использовании таких указателей можно в худшем случае затереть значения других переменных, а в лучшем -- повредить хип (в лучшем -- потому что ошибка сразу выявится). Поэтому главный принцип управления памятью -- при удалении памяти все ссылки на неё должны очищаться. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.07.2015, 15:48 |
|
||
|
|

start [/forum/search_topic.php?author=G.uest&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
get settings: |
9ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
67ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
42ms |
get tp. blocked users: |
1ms |
| others: | 760ms |
| total: | 931ms |

| 0 / 0 |
