kein zugriff auf schleifen-variable

Gast #756568
Lesenswert?

hallo zusammen,

ich habe ein komisches problem: ich habe eine normale for-scheife und 
möchte mir (erstmal) die schleifenvariable a auf einem display ausgeben. 
jedoch bekomme ich dort nur müll.

for(unsigned int a = 0;a<5;a++)
{
char* str;
sprintf(str,"%u",a);
ks0108Puts(str);
}

eigentlich müsste ich ja auf dem Display hinterher stehen haben: 01234

ich möchte über die schleifenvariable ein array-element auslesen, jedoch 
zeigt es mir immer nur den inhalt des ersten array-elementes an...

könnt ihr mir einen tipp geben, wo der fehler liegt, bzw. wo ich weiter 
suchen muss?



vielen dank
Gast #756640
Lesenswert?

> for(unsigned int a = 0;a<5;a++)
> {
> char* str;

Das ist ein uninitialisierter Zeiger. Er zeigt erstmal irgendwo in die 
Landschaft, solange du ihn nicht mit einem Wert belegst.

> sprintf(str,"%u",a);

Hier schreibst du dann per sprintf etwas dorthin, wo der Zeiger 
hinzeigt, also immer noch irgendwo in der Landschaft.

> ks0108Puts(str);

Hier ist dann Zufall, was rauskommt.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren