VS 2005 Debugger :)
От: chabster Украина chabster.blogspot.com
Дата: 10.02.06 12:49
Оценка: :)
for (int i=0; i<1; ++i) ;
int i = -666;

Чему будет равно i по мнению дебаггера в этой точке?
Posted via RSDN NNTP Server 2.0

11.02.06 05:04: Перенесено модератором из 'C/C++' — Павел Кузнецов
Re: VS 2005 Debugger :)
От: vladpol Украина http://vlad-mislitel.livejournal.com/
Дата: 10.02.06 13:06
Оценка:
Здравствуйте, chabster, Вы писали:

C>
C>for (int i=0; i<1; ++i) ;
C>int i = -666;
C>

C>Чему будет равно i по мнению дебаггера в этой точке?
for (int i=0; i<1; ++i) ;
// тут чему угодно
int i = -666;
// тут -666

P.S это имхо
С уважением, Владислав Полищук
Re[2]: VS 2005 Debugger :)
От: chabster Украина chabster.blogspot.com
Дата: 10.02.06 13:14
Оценка:
> P.S это имхо
Не ленимся, проверяем
Posted via RSDN NNTP Server 2.0
Re[3]: VS 2005 Debugger :)
От: vladpol Украина http://vlad-mislitel.livejournal.com/
Дата: 10.02.06 13:16
Оценка:
Здравствуйте, chabster, Вы писали:

>> P.S это имхо

C>Не ленимся, проверяем
Я сейчас на Делфи сижу. так что там будет?
С уважением, Владислав Полищук
Re[3]: VS 2005 Debugger :)
От: vladpol Украина http://vlad-mislitel.livejournal.com/
Дата: 10.02.06 13:34
Оценка:
Здравствуйте, chabster, Вы писали:

C>Не ленимся, проверяем


НЕ МОЖЕТ БЫТЬ!!!
ЭТО ГЛЮК!!!!!!!!!!!!!!!
или я чего-то не знаю?
С уважением, Владислав Полищук
Re: VS 2005 Debugger :)
От: Vybber Украина  
Дата: 10.02.06 13:41
Оценка:
Здравствуйте, chabster, Вы писали:

C>
C>for (int i=0; i<1; ++i) ;
C>int i = -666;
C>

C>Чему будет равно i по мнению дебаггера в этой точке?

В 2005б2 дубеггер уверен что 1(еденица)
Хотя код нормальный...
    for (int i=0; i<1; ++i) ;
00414171  mov         dword ptr [i],0 
00414178  jmp         wmain+63h (414183h) 
0041417A  mov         eax,dword ptr [i] 
0041417D  add         eax,1 
00414180  mov         dword ptr [i],eax 
00414183  cmp         dword ptr [i],1 
00414187  jge         wmain+6Bh (41418Bh) 
00414189  jmp         wmain+5Ah (41417Ah) 
    int i = -666;
0041418B  mov         dword ptr [i],0FFFFFD66h

Может у Вас тоже бета? Не удивительно тогда
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Бобры летают не далеко, но всегда в цель.
Re[3]: VS 2005 Debugger :)
От: Chez Россия  
Дата: 10.02.06 13:44
Оценка:
Здравствуйте, chabster, Вы писали:

>> P.S это имхо

C>Не ленимся, проверяем
ну так что жа там? у меня 2005й сейчас...
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Re[2]: VS 2005 Debugger :)
От: chabster Украина chabster.blogspot.com
Дата: 10.02.06 13:45
Оценка:
Релиз.
Posted via RSDN NNTP Server 2.0
Re: VS 2005 Debugger :)
От: i-maverick Россия  
Дата: 10.02.06 13:48
Оценка:
Здравствуйте, chabster, Вы писали:

C>
C>for (int i=0; i<1; ++i) ;
C>int i = -666;
C>

C>Чему будет равно i по мнению дебаггера в этой точке?

В 2003 аналогично.
Re[3]: VS 2005 Debugger :)
От: Alexey Frolov Беларусь  
Дата: 10.02.06 13:49
Оценка:
Здравствуйте, chabster, Вы писали:

>> P.S это имхо

C>Не ленимся, проверяем

А в чем прикол? А то не доходит как-то
Re[3]: VS 2005 Debugger :)
От: Vybber Украина  
Дата: 10.02.06 13:51
Оценка:
Здравствуйте, chabster, Вы писали:

C>Релиз.

Тогда совсем грустно Хотя по-большому счету не так критично, код ведь генерирует все равно верный....
... << RSDN@Home 1.1.4 stable SR1 rev. 568>>
Бобры летают не далеко, но всегда в цель.
Re[2]: VS 2005 Debugger :)
От: vladpol Украина http://vlad-mislitel.livejournal.com/
Дата: 10.02.06 13:53
Оценка:
Здравствуйте, Vybber, Вы писали:

V>Здравствуйте, chabster, Вы писали:


V>В 2005б2 дубеггер уверен что 1(еденица)

У меня 2003
С уважением, Владислав Полищук
Re[4]: VS 2005 Debugger :)
От: Alexey Frolov Беларусь  
Дата: 10.02.06 13:57
Оценка:
упс... не заметил про 2005
у меня 2003
ну так и что же там?

вообще компилятор в релизе ругается на такой код (warning C4288). думаю там еще и оптимизатор руку приложит
Re: VS 2005 Debugger :)
От: Coldi  
Дата: 11.02.06 07:17
Оценка: -2 :))) :))
Здравствуйте, chabster, Вы писали:

C>
C>for (int i=0; i<1; ++i) ;
C>int i = -666;
C>

C>Чему будет равно i по мнению дебаггера в этой точке?

Как это можно Int32 приcвоить отрицательное значение?
Re[2]: VS 2005 Debugger :)
От: Аноним  
Дата: 12.02.06 10:40
Оценка:
Здравствуйте, Coldi, Вы писали:

C>Как это можно Int32 приcвоить отрицательное значение?


MSDN: "The Int32 value type represents signed integers with values ranging from negative 2,147,483,648 through positive 2,147,483,647".

Но это не суть важно. Можешь написать там 10.
Re[3]: VS 2005 Debugger :)
От: Coldi  
Дата: 12.02.06 11:01
Оценка:
Здравствуйте, Аноним, Вы писали:

А>Здравствуйте, Coldi, Вы писали:


C>>Как это можно Int32 приcвоить отрицательное значение?


А>MSDN: "The Int32 value type represents signed integers with values ranging from negative 2,147,483,648 through positive 2,147,483,647".


А>Но это не суть важно. Можешь написать там 10.


блин это я не знаю с чего вдруг заклинился... ужас и позор... такого еще не было...
Re[4]: VS 2005 Debugger :)
От: i-maverick Россия  
Дата: 12.02.06 12:17
Оценка:
Здравствуйте, Coldi, Вы писали:

C>>>Как это можно Int32 приcвоить отрицательное значение?


А>>MSDN: "The Int32 value type represents signed integers with values ranging from negative 2,147,483,648 through positive 2,147,483,647".


А>>Но это не суть важно. Можешь написать там 10.


C>блин это я не знаю с чего вдруг заклинился... ужас и позор... такого еще не было...


Да ничего, с кем не бывает.
Работа, стрессовые ситуации, налоги, майкрософт...
Re: VS 2005 Debugger :)
От: Smarty Россия  
Дата: 12.02.06 14:44
Оценка: +1
Здравствуйте, chabster, Вы писали:

C>
C>for (int i=0; i<1; ++i) ;
C>int i = -666;
C>

C>Чему будет равно i по мнению дебаггера в этой точке?

Прочел всю ветку — нифига не понял. Для начала — вот ИМЕННО такие две строчки не компилятся.

Error 1 A local variable named 'i' cannot be declared in this scope because it would give a different meaning to 'i', which is already used in a 'child' scope to denote something else

И правильно делают. Так в чем закрутка-то?
<<Rule of Forum: После того, как вопрос задан... не поленитесь поставить отвечавшему оценку!>>
Re[2]: VS 2005 Debugger :)
От: i-maverick Россия  
Дата: 12.02.06 16:35
Оценка:
Здравствуйте, Smarty, Вы писали:

S>Прочел всю ветку — нифига не понял. Для начала — вот ИМЕННО такие две строчки не компилятся.

S>

S>Error 1 A local variable named 'i' cannot be declared in this scope because it would give a different meaning to 'i', which is already used in a 'child' scope to denote something else

S>И правильно делают. Так в чем закрутка-то?

Проверял в 2003 и в 2005 express — все нормально компилится, как в debug, так и в release...

А почему правильно делают? По синтаксису все вроде правильно написано.
Re[2]: VS 2005 Debugger :)
От: Максим Зелинский  
Дата: 13.02.06 12:14
Оценка: :)
Здравствуйте, Smarty, Вы писали:

S>Прочел всю ветку — нифига не понял. Для начала — вот ИМЕННО такие две строчки не компилятся.

S>

S>Error 1 A local variable named 'i' cannot be declared in this scope because it would give a different meaning to 'i', which is already used in a 'child' scope to denote something else

S>И правильно делают. Так в чем закрутка-то?
Что надо писать не на C# это, а на C++
... << RSDN@Home 1.2.0 alpha rev. 0>>
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.