Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.10.30;
Скачать: CL | DM;

Вниз

Переменные в функциях   Найти похожие ветки 

 
Sysanin   (2005-10-06 16:13) [0]

Если переменная описана в функции и при работе даной функции эта переменная изменяется, то при повторном использовании этой функции значение переменной сохраниться или нет?


 
Ищущий ©   (2005-10-06 16:18) [1]

Если она объяввлена внутри функции - то не должна :), но на всякий случай в самом начале функции ей желательно присвоить исходное значение.
Если же нужно сохранить результат переменной  - сохраняй в переменную проекта.


 
evvcom ©   (2005-10-06 16:40) [2]


> Если переменная описана в функции и при работе даной функции
> эта переменная изменяется

Где описана? Она может быть описана в списке формальных параметров или в разделе описания локальных переменных. Судя по всему тебя интересует локальная переменная. Для нее выделяется место в стеке, поэтому если за первым вызовом следует второй вызов этой же функции, то вероятно значение в стеке никто не запортит, и ты увидишь старое значение. Но это не значит, что так можно делать. Программировать надо наверняка и полагаться, что в том мусоре, который содержится в когда-то свободном стеке, ты найдешь то, что ожидаешь, нельзя.

> Если же нужно сохранить результат переменной  - сохраняй
> в переменную проекта.

Это что за зверь? Есть переменные локальные и глобальные. И в этом случае совсем необязательно сохранять результат в глобальных переменных.


 
msguns ©   (2005-10-06 16:43) [3]

Марш к основам паскаля !



Страницы: 1 вся ветка

Текущий архив: 2005.10.30;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.028 c
1-1128376693
Германн
2005-10-04 01:58
2005.10.30
Не могу "запустить" программу под дебаггером из IDE.


2-1128807411
ArtemESC
2005-10-09 01:36
2005.10.30
Буфер обмена


14-1128399860
12DFBDD
2005-10-04 08:24
2005.10.30
Форум, новинки


14-1128596863
!Trinix
2005-10-06 15:07
2005.10.30
Задача по информатике


3-1127094224
DimonS
2005-09-19 05:43
2005.10.30
Как правильно сложить несколько полей?