Do-while-SChleife

Hallölle,
ich habe ein Problem mit meiner do while Schleife. Ich wollte mein Abbruch bei 0 haben, aber dann beendet das Programm ganz, obwohl ich nur die Beendigung der Schleife vorhatte.

Teil meines Programms:
.
.
.
do{ bed.
} while(r!=0);
printf("…");
getchar();
return 0;
}

ich weiß nicht genau wo mein Fehler liegt.

Liebe Grüße von der Ostsee.

der Grund dafür ist ganz einfach der, das du nach der schleife das Programm abbrichst.
Schön wäre noch deine IDE wenn du in VS entwickelst, geb ich dir den Tipp, bei auführen Strg+F5 zu drücken.
Lg der einzigware

Hi,

ist diese Schleife in der Main funktion ? Wenn ja dann verlässt du mit return die Main funktion und somit dein Programm

Du solltest deine do - while schleife nicht mit return oder break verlassen das kann bei größeren Programmen oder Schleifen sehr unübersichtlich werden. Besser wäre folgendes :smile:

INT32 iCount = 100;
BOOL bBreak = FALSE;

do
{
iCount -= 1;

if ( iCount == 0 )
bBreak = TRUE;
}while( bBreak == FALSE);

Die Schleife wird solange durchlaufen bis bBreak = TRUE ist :smile: