Hallo leute kann mir wer Helfen irgend wie funktioniert meine funktion
nicht:
und zwar habe ich in einer Funktion so ne schleife:
for(semi_zehler = 0; semi_zehler<4;semi_zehler++)
{
//Die 3 befehls zeichen einlesen
for(zehler = 0;zehler <3;zehler++)
{
befehl[buffer_zeichen] = buffer[buffer_zeichen];
buffer_zeichen++;
befehl_zeichen++;
}
// ':', '?', ' ', '\0', '\r' oder '\n' suchen
found = NO;
while(found == NO)
{
if(buffer[buffer_zeichen] == ':' || buffer[buffer_zeichen] == '?'
|| buffer[buffer_zeichen] == ' ' ||
buffer[buffer_zeichen] == '\0'|| buffer[buffer_zeichen] ==
'\n'|| buffer[buffer_zeichen] == '\r')
{
befehl[befehl_zeichen] = buffer[buffer_zeichen];
befehl_zeichen++;
found = YES;
}
else if(buffer_zeichen >= 50)
{
return(1);
}
buffer_zeichen++;
};
//Prüfen ob es ein Frage zeichen oder string ende zeichen war, dann
raus.
if(befehl[befehl_zeichen-1] == '?'||buffer[buffer_zeichen-1] ==
'\0'|| buffer[buffer_zeichen-1] == '\n'||
buffer[buffer_zeichen-1] == '\r')
{
befehl_auswerten();
}
}
und diese schlefe will er nicht ausführen.
wenn ich mit dem debugger drüber gehe kann ich z.b. die werte
befehl_zeichen und buffer_zeichen nciht anzeigen lassen er meldet
Location not valid.
wie kommt es. die schleifen zehler werden alle nicht gezählt. bis auf
semi_zähler bei den anderen for´s läuft er einmal durch und das wars.
bedanke mich im vorraus.
> found = NO;
Was bitte ist NO? Wo ist das definiert?
Abgesehen davon: Benutze bitte die Codeformatierung.
> bei den anderen for´s läuft er einmal durch und das wars.
Ich sehe nur insgesamt zwei for-Schleifen, mehr nicht.
Und die Probleme mit den Zählvariablen kann man nur anhand des Kontextes
nachvollziehen, nicht mit einem Codeausschnitt, in dem sämtliche
Variablendefinitionen fehlen.
Antwort schreiben
Bitte melde dich an, um einen Beitrag zu schreiben.