Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2007.07.22;
Скачать: [xml.tar.bz2];

Вниз

переменная баг d7?   Найти похожие ветки 

 
cossak ©   (2007-06-23 20:02) [0]

обучаюсь дельфи поставил д7
на голой форме:label1-5.caption:= inttostr(q-y);и кнопку
на клик
var q,w,e,r,t,y:integer;
begin
label1..5(q..y)
первые две переменные не 0 с перезагрузкой д7 они разные.
т.е qw<>0 остальные 0
меняю местами var тоже самое первые две не 0 что захрень
ty<> не 0 ост. 0
почему?
может в настройках чего нить?


 
cossak ©   (2007-06-23 20:11) [1]

точнее наврал насчет перезагрузки сорри.
первая =4376880
вторая = 1243624
Может поможет.


 
Virgo_Style ©   (2007-06-23 20:14) [2]

насколько я смог разобраться в этом потоке слов, переменные не инициализируются


 
Плохиш ©   (2007-06-23 20:19) [3]

Детский сад на выезде, вернее, заезде на делфимастер...


 
Юрий Зотов ©   (2007-06-23 20:50) [4]

> cossak ©   (23.06.07 20:02)

Это не баг, так и должно быть. С чего Вы решили, что переменная обязана быть равной нулю?


 
Инс ©   (2007-06-23 21:00) [5]

Нулями инициализируются только переменные автоматически финализируемых типов - длинные строки, динамические массивы, интерфейсы.


 
Инс ©   (2007-06-23 21:10) [6]

С ассемблером знакомы? Чтобы понимать, почему так получается, что локальные переменные при входе в подпрограмму содержат мусор, нужно знать, что представляют собой локальные переменные и как они создаются. А происходит это вот как: локальные переменные живут в стеке. При входе в подпрограмму, указатель вершины стека смещается на величину, равную размеру блока локальных переменных. При этом тот мусор, что был в стеке до этого и становится содержимым локальных переменных. Для автоматически финализируемых типов, компилятор специально вставляет в пролог подпрограммы код инициализации, а в эпилог - код финализации. Вы все это можете увидеть сами. Поставьте брейкпоинт в начале подпрограммы, нажмите Ctrl+Alt+C и посмотрите какой код сгенерировал компилятор.


 
oxffff ©   (2007-06-23 21:55) [7]


> Инс ©   (23.06.07 21:00) [5]
> Нулями инициализируются только переменные автоматически
> финализируемых типов - длинные строки, динамические массивы,
>  интерфейсы.


Varaint забыл


 
Юрий Зотов ©   (2007-06-24 11:41) [8]

> Инс ©   (23.06.07 21:00) [5]

Еще глобальные переменные и поля классов.


 
Инс ©   (2007-06-24 11:46) [9]


> Еще глобальные переменные и поля классов.


Да, только они никакого отношения к стеку не имеют. А вот про Variant верное замечание.


 
Правильный Вася   (2007-06-25 11:31) [10]


> label1-5.caption:= inttostr(q-y);

а это вообще компилируется?


 
Инс ©   (2007-06-25 11:34) [11]


> а это вообще компилируется?


А должно? Купите себе любую книжку для новичков по Delphi или Turbo Pascal. А то на такие вопросы даже как-то неудобно отвечать.


 
Правильный Вася   (2007-06-25 12:08) [12]

> Инс ©   (25.06.07 11:34) [11]
ты ошибся адресом в наезде
этот вопрос был автору, который в [0] чево-то там привел, похожее на код


 
Инс ©   (2007-06-25 12:58) [13]


> ты ошибся адресом в наезде


Виноват, счет тебя автором ;) Звиняй...


 
Anatoly Podgoretsky ©   (2007-06-25 13:00) [14]

Автор давно исчез, рыдает.



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

Форум: "Начинающим";
Текущий архив: 2007.07.22;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.038 c
15-1182330618
sergeyst
2007-06-20 13:10
2007.07.22
Найти макс из чисел, встречающееся в матрице более 1-го раза


15-1182400848
HID
2007-06-21 08:40
2007.07.22
Ребят, помогите прогу сделать для авто-суммирования таблиц dbf


2-1182953199
Тимофей
2007-06-27 18:06
2007.07.22
StringGrid и DBGrid


2-1183203762
Qzzma
2007-06-30 15:42
2007.07.22
TTreeView


2-1182743942
Washington
2007-06-25 07:59
2007.07.22
ADOQuery и ListBox





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский