PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : C Pointer



itsme
29-07-2002, 12:12
Hi,
ich habe ein kleines Problem. Hier zuerst mal den Sourcecode:

#include <string.h>

struct person
{
char vorname[20];
char nachname[20];
int alter;
};

struct person my_person;
int main()
{
struct name *pointer;
pointer = &my_name;
strcpy(pointer->vorname,"Mike");
pointer->alter= 20;
printf("%s\n",pointer->vorname);
printf("%s\n",pointer->alter);
}

Die Zuweisung eines Alters funktioniert so nicht. Wenn ich den Pointer aber an eine Funktion übergebe und dann das Alter setzte funktioniert alles bestens. Wieso ist das so? Habe ich hier ein Grundprinzip von C übersehen? ;)

anda_skoa
29-07-2002, 12:17
Irgendwo passt da was nicht :)

my_person, name, my_name, du solltest dich bei einem Beispiel schon enstcheiden :D

Außerdem sieht das printf beim Alter nicht richtig aus.
Dort steht ein %s statt dem %d

Ciao,
_

itsme
29-07-2002, 12:28
Hat sich erledigt. Das %s war natürlich falsch. Das mit dem falschen Namen des struct's liegt an meinen zweifelhaften copy-paste Fähigkeiten! ;)

Danke!