Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » Struct verschachteln

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
02.11.2004, 13:00 Uhr
~ein c neuling
Gast


Moin,

kann mir jemand sagen wie ich ein Struct richtig verschachteln kann?

Ich habe folgendes Struct:


C++:
typedef struct kontaktdaten
{
    char name[40];
    char vorname[40];
    char strasse[40];
    char hausnummer[10];
    char plz[7];
    char ort[30];
    char telefon[20];
    char handy[20];
    char email[40];
    struct kontaktdaten *next;
} KONTAKTDATEN;



Jetzt sollen handy,telefon und email in ein eigenes Struct innehalb des kantaktdaten structs mit dem namen ecom.

Ich habe es ersteinmal so versucht:


C++:
typedef struct kontaktdaten
{
    char name[40];
    char vorname[40];
    char strasse[40];
    char hausnummer[10];
    char plz[7];
    char ort[30];
    
struct ecom
    {
    char telefon[20];
    char handy[20];
    char email[40];
    }

    struct kontaktdaten *next;
} KONTAKTDATEN;



Aber ich konnte nicht mehr auf die Daten zugreifen.

vorher:

C++:
printf("Bitte Nachname eingeben\n");
gets (a->name);   //a ist Pointer auf KONTAKTDATEN



danach habe ich es so probiert:

C++:
printf("Bitte Nachname eingeben\n");
gets (a->ecom->name);



Warum funktioniert das nicht, oder wie muss ich das überhaupt machen???

Schon mal vielen Dank!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
02.11.2004, 13:19 Uhr
ao

(Operator)



C++:

typedef struct
{
    char telefon[20];
    char handy[20];
    char email[40];
} ECOM;

typedef struct kontaktdaten
{
    char name[40];
    char vorname[40];
    char strasse[40];
    char hausnummer[10];
    char plz[7];
    char ort[30];

    ECOM ecom;

    struct kontaktdaten *next;
} KONTAKTDATEN;
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
02.11.2004, 13:44 Uhr
ao

(Operator)



Zitat von ~ein c neuling:


C++:
printf("Bitte Nachname eingeben\n");
gets (a->ecom->name);


Warum funktioniert das nicht, oder wie muss ich das überhaupt machen???

ECOM hat kein Feld "name", ich nehme an, du meinst "telefon" oder so.

C++:
gets (a->ecom.telefon);

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: