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

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

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

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

14.11.2009, 21:19. Просмотров 1505. Ответов 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. Буду очень благодарен за ссылку на соответствующую статью про распределение памяти, понятную не особо продвинутому среднестатистическому студенту.

Товарищи крутые программеры, не злитесь, хочется выяснить раз и навсегда
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.11.2009, 21:19     Что и куда девается...
Посмотрите здесь:

Не понятно куда девается значение по указателю? - C++
Есть класс class base { int count*; public: base(int _c) { count = &amp;_c; }

Резкий выход из проги: куда девается выделенная переменной память? - C++
int APIENTRY _tWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPTSTR lpCmdLine, int...

Вложенные циклы. Что куда вложить? - C++
Здравствуйте, форумчане. Натолкните на мысль, пожалуйста. Есть такая задача: Написать программу, которая выводит на экран линию заданным...

Куда следует пойти туристам, что бы попасть на автобусную остановку? - C++
можете мне помочь с задачей. надо решить на С++ Туристы вышли из леса на шоссе неподалеку от километрового столба с отметкой А км и...

Куда записывается \0 - C++
#pragma hdstop #include &lt;stdio.h&gt; #include &lt;conio.h&gt; #define eof 26 #define max 1000 getline(char s,int lim) { int c,i; ...

Куда двинуться? - C++
Учусь на врача, программированием занимаюсь как хобби. Освоил книжку &quot;Моя первая программа на Си&quot;, пишу простые программы, пользуясь...

Куда дальше? - C++
Ситуация такая: дошел до такого этапа что не знаю в каком направлении дальше развиваться! Большая часть тем рассматриваемая в этом разделе...

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

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

Добавлено через 1 минуту
Или ты имеешь в виду стаь OlyDbg и будет тебе щастье? Ну это как-то уже малоинтересно. Точно так же на вопрос а как работает то-то и тот в операционных сиситемах можно дать ссылку на исходники ядра и сказать на вот ковыряйся
kravam
быдлокодер
1693 / 880 / 44
Регистрация: 04.06.2008
Сообщений: 5,438
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++ STL Qt Win32 Api, но судя по всему для трудоустройства недостаточно . Куда дальше ? Мне говорили о возможности участия в...

Куда двигаться дальше?? - C++
Доброй ночи всем! Вот с грехом пополам основы С++ приблизительно прошел. Простые консольные приложения могу делать. А дальше что?? На...

Куда утекает память - C++
Бесполезный код проверяет время работы функции. Память выделяется под массив и высвобождается перед выходом из функции. Тем не...

Куда теряется точность? - C++
Для примера, есть формула (a+b)3 - a3. В расчетах с хранением промежуточных результатов и без него получаются разные ответы. #include...

Куда двигаться дальше? - C++
Ребят, нужно ваше мнение:) Пару недель назад начал изучать 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