2016-11-21 6 views
-1

Bitte überprüfen Sie das unten angegebene Code-Snippet. Entschuldigen Sie, wenn etwas mit der Syntax oder irgendetwas anderem nicht stimmt. Ich bin ein Neuling, der versucht, Strukturnutzung im Detail zu lernen, und ich bin zufällig auf das folgende Beispiel gestoßen. Ich wollte nur wissen, wie Stu_Details zugreifen von Class_DetailsStrukturverwendung innerhalb einer anderen Struktur

typedef struct { 
int age; 
int RollNo; 
int Rank; 
char Name[10]; 
}TypeStudent; 

typedef struct { 
char class_name[20]; 
TypeStudent Students[20]; 
}TypeClass; 

const TypeStudent Stu_Details[] = { 
{ 3, 1, 18, "Mahesh"}, 
{ 3, 1, 7, "Kumar"} 
}; 

const TypeClass Class_Details[]= { 
{ "Class 10",  Stu_Details}, //two students details 
{ "Class 8",    0} //no student details attached 
}; 
+0

Ein Compiler ist die bevorzugte Methode zum Überprüfen der Syntax Ihres Programms. Sie greifen hier eigentlich gar nicht zu, versuchen Sie nur, es zu initialisieren. Was ist dein * genaues * Problem? – StoryTeller

+0

Class_Details [0] .Stu_Details [0] .Name, Class_Details [0] .Stu_Details [0] .RollNo usw. –

Antwort

-1

Dieser arbeitete für mich sein.

typedef struct { 
    int age; 
    int RollNo; 
    int Rank; 
    char Name[10]; 
}TypeStudent; 

typedef struct { 
    char class_name[20]; 
    TypeStudent *Students; 
}TypeClass; 

int main() 
{ 

    const TypeStudent Stu_Details[] = { 
    { 3, 1, 18, "Mahesh"}, 
    { 3, 1, 7, "Kumar"} 
    }; 

    const TypeClass Class_Details[]= { 
    { "Class 10",  Stu_Details}, //two students details 
    { "Class 8",    0} //no student details attached 
    }; 

    printf("\r\nTest: %s",Class_Details[0].Students->Name); 
    return 0; 
} 
-1
Class_Details[0].Students[0].Name 

für exemple wird "Mahesh"

+0

Der Name der Membervariable ist 'Students', nicht' Stu_details', also wäre 'Class_Details' korrekt [0] .Studenten [0] .Name'. – mch

+0

richtig! ich habe es repariert – Glick

Verwandte Themen