strcut frage
-
hallo
hab da ne frage bzg. strcut und so :S
#include <stdio.h> #include <stdlib.h> struct adresstyp{ char* name; char* vorname; char nickname[100]; int alter; } myAdress; void getNickname(struct adesstyp*); { // wie kann ich hier jetzt mittels struct* auf name bzg. vorname zugreiffen? } void main() { myAdress.name = "name"; myAdress.vorname = "vorname"; myAdress.alter = 25; //weiterer code kram^^ getNickname(&myAdress); //weiterer ausgabecode.
so, kann mir da wer helfen?
thx schonmal im voraus.grus
-
http://www.pronix.de/pronix-765.html
hab mich selber noch net wirklich damit beschäftigt aber des könnte dir weiterhelfen
-
kann mir das jemand auf mein beispiel erklären? ich blick ned durch
gruss
-
dein Struct enthält pointer. Sollen diese auf Speicherbereich mit sinnvollem Inhalt zeigen, dann musst du er speicher allokieren. malloc() ist dir hier behilflich.
Strings werden in C mit strcpy() kopiert.
-
jo, aber wenn ich nun un der getnick.... funktion den namen und den vornamen ausgeben will, wie mach ich das mit dem struct bzw. strcat`?
gruss
-
Wenn Du den ausgeben willst machst Du das am besten mit printf...
-
Du hast irgendwie noch nicht einmal myAdress in main() als Struct vom Typ adresstyp deklariert.
-
myAdress ist eine globale Variable - macht i.a. wenig Sinn
Ansonsten funktioniert der Elementzugriff mit dem Operator . (für struct-Variablen) bzw. -> (für struct-Pointer):
void getNickname(struct adresstyp* person) { printf("%s \"%s\" %s\n",person->vorname,person->nickname,person->nachname); }
-
vielen dank, das hat mir geholfen
gruss