Ich will ein String-Array an ein Unterprogramm übergeben.
Im Unterprogramm will ich den String bearbeiten und mit atoi in einen
Integer speichern.
Nach folgendem Prinzip:
unsigned int geschw(unsigned char *string)
{
// Verschiedene Operationen für Stringbearbeitung
return atoi(string);
}
int main(void)
{
unsigned char test[]="0005";
int i;
i= geschw(test);
}
Funktioniert so allerdings nicht. bekomme immer 0 zurück
Wahrscheinlich ist es ein sehr dummer Fehler bin C-Neuling
Wie muss die Parameterübergabe richtig sein, damit ich durch atoi 5
zurückgeliefert bekomme?
Hmm. Das sollte genau so funktionieren wie Du es geschrieben hast. (OK: atoi will einen const char* und keinen unsigned char*, aber das ist hier nicht das Problem). Ist das exakt zu 100% Dein Code?
Ok, ich habe jetzt den Fehler! Die Funktion muss natürlich int geschw(unsigned char *string) und nicht unsigned int geschw(unsigned char *string) heißen. Trotzdem Danke
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.