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

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 12, средняя оценка - 4.83
Red Planet
49 / 10 / 2
Регистрация: 20.09.2009
Сообщений: 263
#1

Что и куда девается... - C++

14.11.2009, 21:19. Просмотров 1491. Ответов 25
Метки нет (Все метки)

Не очень хорошо знаю несколько вещей, а узнать хотелось бы очень.

Вопрос 1.
Локально объявленные переменные удаляются из памяти по окончании блока, так? Или же они где-то повисают, просто становясь недоступными?
Например.
C++
1
2
3
4
void main (void)
{
for (int a=0; a<8; a++) {/*код*/}
}
Переменная a удалилась по выходе из for или где-то "провисла"?

Вопрос 2.
Глобально объявленные переменные: каково их время жизни?
C++
1
2
3
4
5
int x;
void main (void)
{
//код
}
Получается, что переменная x живет "вечно" и везде доступна, так?

Вопрос 3.
Функции и указатели на функции, объявленные глобально и локально. Тот же самый вопрос про них: время их жизни.

P.S. Буду очень благодарен за ссылку на соответствующую статью про распределение памяти, понятную не особо продвинутому среднестатистическому студенту.

Товарищи крутые программеры, не злитесь, хочется выяснить раз и навсегда
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
kravam
быдлокодер
1690 / 877 / 44
Регистрация: 04.06.2008
Сообщений: 5,395
17.11.2009, 08:28     Что и куда девается... #21
Я разве чему-то из вышесказанного противоеречил? Нет.
Всё верно. Единственное, что я по-моему, не сказал, так это то, что ячейки можно переиспользовать.
Просто не стал до ТС (помним, что значит ТС?) это доносить, пусть бы сперва проникся мыслью, что ячейки никуда не деваются.

Постепенность- мать ученья!
Evg
Эксперт CАвтор FAQ
17411 / 5649 / 355
Регистрация: 30.03.2009
Сообщений: 15,467
Записей в блоге: 26
17.11.2009, 12:30     Что и куда девается... #22
Цитата Сообщение от kravam Посмотреть сообщение
пусть бы сперва проникся мыслью, что ячейки никуда не деваются
Это правильный подход. Но этого мало, надо ещё уметь понятно объяснить. Для полного счастья тогда надо рисовать картинку стека и процедурные активации, потому что вот так на пальцах одним текстом ты вряд ли что-то доходчиво объяснишь.
kravam
быдлокодер
1690 / 877 / 44
Регистрация: 04.06.2008
Сообщений: 5,395
17.11.2009, 12:53     Что и куда девается... #23
Лучше один раз увидеть, чем семь раз услышать. А потому
мой пост номер 17
Там и стек нарисован и код и прочее.
Evg
Эксперт CАвтор FAQ
17411 / 5649 / 355
Регистрация: 30.03.2009
Сообщений: 15,467
Записей в блоге: 26
17.11.2009, 15:11     Что и куда девается... #24
Ты ссылку не туда по ходу дал

Добавлено через 1 минуту
Или ты имеешь в виду стаь OlyDbg и будет тебе щастье? Ну это как-то уже малоинтересно. Точно так же на вопрос а как работает то-то и тот в операционных сиситемах можно дать ссылку на исходники ядра и сказать на вот ковыряйся
kravam
быдлокодер
1690 / 877 / 44
Регистрация: 04.06.2008
Сообщений: 5,395
17.11.2009, 16:19     Что и куда девается... #25
Да нет, туда я ссылку дал.
Там никто не говорит: ковыряйся. (Хотя иногда можно).
Там всё разжёвывают и в рот кладут.

Тыкают: вот стек. Вот код. Вот синеньким подсвечены такие-то инструкции процессора, а зелёненьким такие. А вот и твоя строчка "Hello, word". А вот адрес по которому она расположена. А теперь ражми на кнопку F8 и посмотри, что оказалось на верхушки- чего? Правильно, стека.

...И так далее.
Так что всё круто. Кроме того, мой ничтожный жизненный опыт подсказывает мне, что без отладчика програмёру никуда. OllyDbg хороший отладчик, по ссылке хоршая инструкция, а автор созрел чтобы с ним познакомиться, раз такие вопросы задаёт.
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
19.11.2009, 18:03     Что и куда девается...
Еще ссылки по теме:

Куда дальше? C++
C++ Куда следует пойти туристам, что бы попасть на автобусную остановку?
Вложенные циклы. Что куда вложить? C++
C++ Куда создается файл?
Куда записывается \0 C++

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
Red Planet
49 / 10 / 2
Регистрация: 20.09.2009
Сообщений: 263
19.11.2009, 18:03  [ТС]     Что и куда девается... #26
Хм... Создавая тему, я и не думал, что такая дискуссия на несколько страниц развернется. Занялся OllyDbg. Вопросы по нему буду сюда писать.
Yandex
Объявления
19.11.2009, 18:03     Что и куда девается...
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru