ja der fehler steckt definitiv dahinter, weil man sowas nicht bringen kann(alles global, void funktionen...)
versuch erst mal zu verstehen wie ne funktion funktinoiert und versuche dann weiter zu programmieren, sonst ist das sinnlos
ich hab die den ersten teil mal programmiert, den zweiten musst du aber selber machen
Code:
#include <stdio.h>
int TextInZahlUmwandeln(unsigned char *text) // *text: zieger auf ein char alley => quasie ein string
{
unsigned int zahl = 0;
while(*text) //char arrays sind immer 0 terminiert, wenn der zeiger auf 0 zeigt endet die schleife, so ist die string länge wayne
{
zahl = zahl*10;
zahl = (zahl + *text-48);
text++; // den zeiger um ein feld weiter "schieben" ...das letzte feld ist eine 0
}
return zahl; // die rückgabe ist ein integer
}
int main()
{
unsigned char zahl_als_text[7] = {'1','2','3','4','5','6'};
int zahl_als_zahl = TextInZahlUmwandeln(&zahl_als_text[0]); // den wir hier einem anderen integer zuweisen
// &zahl_als_text[0]: zeiger auf erstes feld des arrays
printf("TEXT %s ergibt umgewandelt in eine Zahl %i\n",zahl_als_text, zahl_als_zahl);
return 0;
}