[ neb @ 31.05.2006. 10:58 ] @
| Imam jedav veoma zanimljiv problem.
U koliko zelim da pratim promene u debug modu petlje "for" (dole) preko tacaka prekida dobijam brzi skok na krajnju vrednost. Jednostavno ne mogu da pratim inkrement po inkrement "i" promenljive.
Koristim Visual C++
Code:
{
DWORD x=10;
for (DWORD i=0;i<x;i++);
{
int y=i;
}}
cim postavim tacku prekida na mesto ispred
"for (DWORD i=0;i<x;i++);"
zatim pritisnem taster F11 kursor ulazi u petlju ali vrednost "i" odmah skace na "10" umesto da biva "0" s obzirom na relaciju "i<x" koju sam zadao ona moze imati maksimalnu vrednost "0-9".
Ponovo kazem da pisem jedan program i da mi se ovo izenada dogodilo tokom rada.
Je li jos neko imao ovakav problem? |
[ jablan @ 31.05.2006. 11:01 ] @
Biće da ti je kompajler optimizovao petlju. Ukapirao je da je na kraju uvek y=x i izbacio ti je inkrementiranje.
[ NastyBoy @ 31.05.2006. 13:12 ] @
Citat:
for (DWORD i=0;i<x;i++);
See what I see?
[ jablan @ 31.05.2006. 13:20 ] @
... a možda je i do toga.

[ kiklop74 @ 31.05.2006. 14:59 ] @
Zbog takvih problema ovakav stil je zgodniji:
Code:
for (int i=0; i < 10; ++i) { //Zagrada ovde a ne ispod
}
[ neb @ 31.05.2006. 15:42 ] @
Izvinjavam se zbog ovog pitanja.
Ovakve greske nisu retke i po nekada se vrlo tesko uoce.
Hvala na napomeni.
[ Dragi Tata @ 31.05.2006. 16:12 ] @
Citat:
kiklop74: Zbog takvih problema ovakav stil je zgodniji:
Nemoj o stilovima, molim te. Završićemo na Advocacy forumu

Copyright (C) 2001-2025 by www.elitesecurity.org. All rights reserved.