>a kovetkezo kod nem mux:
> int count, i;
> for (count = 0, i = 0; i < buf.use; i++)
> if (buf.content[i] == 0xa)
> count++;
>
>ez viszont igen:
> int count, i;
> for (count = 0, i = 0; i < buf.use; i++) {
> if (buf.content[i] == 0xa)
> count++;
> }
>Az egyetlen kulonbseg a kapcsos zarojel, tehat a ket kod elmeletileg
>egyenerteku (gcc is jo eredmenyt ad). Ja, a hibas mukodes: belep a
>ciklusmagba egyszer, utana pedig tovabbmegy. Nem noveli 'i'-t sem.
>Allat, mi?
Nem látom a külömbséget!!! (lehet, hogy vak vagyok?)
Tahán így korrektebb:
int count=0;
for (int i = 0; i < buf.use; i++) {
if (buf.content[i] == 0xa)
count++;
}
mivel i-nek nem használod az értékét.
De az égész ciklus a buff.use értékén áll.
:Voli
|
Szia!
Hasonlo esettel mar en is talalkoztam parszor Borland C++ kornyezetben. pl.
ket, nagyjabol
megegyezo feltetelnel, ha az elso teljesult, hajlamos volt az utana
kovetkezo (!) elagazasba
bemenni...
Viktor
----- Original Message -----
From: "HIX CODER" >
>
> Hello!
>
> a kovetkezo kod nem mux:
> int count, i;
> for (count = 0, i = 0; i < buf.use; i++)
> if (buf.content[i] == 0xa)
> count++;
>
> ez viszont igen:
> int count, i;
> for (count = 0, i = 0; i < buf.use; i++) {
> if (buf.content[i] == 0xa)
> count++;
> }
>
> Az egyetlen kulonbseg a kapcsos zarojel, tehat a ket kod elmeletileg
> egyenerteku (gcc is jo eredmenyt ad). Ja, a hibas mukodes: belep a
> ciklusmagba egyszer, utana pedig tovabbmegy. Nem noveli 'i'-t sem.
> Allat, mi?
>
> Velemeny?
>
> Szabi
>
>
|