irgendwie werde ich den Eindruck nicht los, dass du nur mit Endlosschleifen arbeitest. Deshalb hier mal eine kurze Anleitung.

Beispiel 1: //a wird in den Serviceroutienen gesetzt
Code:
int a;
while(1)
{
  while(a){//code}
  while(!a){//anderer code}
}
Beispiel 2: //wenn der code sehr lang ist in den Schleifen
// nur mit Endlosschleifen
Code:
int a;
while(1)
{
  while(1)
  {
    //code
    if(!a)break;
    //code geht weiter
  }
  while(1)
  {
    //anderer code
    if(a)break;
    //code geht weiter
  }
}
Beispiel 3: //eine Mischung aus beiden
Code:
int a;
while(1)
{
  while(a)
  {
    //code
    if(!a)break;
    //code geht weiter
  }
  while(!a)
  {
    //anderer code
    if(a)break;
    //code geht weiter
  }
}
Im Normalfall würde ich hier Beispiel 1 nehmen

sast