DF Dirk F. (dirkf) OP 09.10.2023 10:46 #7511992 Lesenswert? • ▲ ▼ Hallo, ich habe in C folgendes erstellt, was auch kompiliert werden kann: 1 typedef struct { 2 char name[50]; // Name der Person 3 int alter; // Alter der Person 4 }person; 5 6 // Objekte erstellen 7 person 8 Person1={"Kurt",44}, 9 Person2={"Felix",55}; 10 11 // Zugriff 12 Person1.alter = 66; Ich möchte aber über ein Array auf die Element zugreifen: 1 Person[1].alter = 77; Geht das irgendwie ? Antwort Zitieren Bearbeiten Thread verschieben Thread sperren Anmeldepflicht aktivieren Anpinnen Thread löschen Thread mit anderem zusammenführen Beitrag melden
AJ Ada J. Quiroz (inschnier) 09.10.2023 10:51 #7511997 Lesenswert? • ▲ ▼ Dirk F. schrieb: person Person1={"Kurt",44}, Person2={"Felix",55}; // Zugriff Person1.alter = 66; Ja. 1 person array[2] = {{"Kurt",44},{"Felix",55}}; 2 person* person1 = &array[0]; 3 // Zugriff 4 5 array[0].alter = 66; 6 Person1.alter = 66; Antwort Zitieren Bearbeiten Löschen Beitrag melden
HK Harald K. (kirnbichler) 09.10.2023 10:53 #7512001 Lesenswert? • ▲ ▼ Natürlich: 1 person meinArray[10]; 2 3 // Mit Initialisierer (und aus Initialisierer bestimmter Arraygröße): 4 5 person meinArray[] = { {"Kurt", 44}, {"Felix", 55} }; 6 7 // Zugriff auf Elemente 8 9 printf("%s ist %d Jahre alt\n", meinArray[0].name, meinArray[0].alter); Antwort Zitieren Bearbeiten Löschen Beitrag melden
AJ Ada J. Quiroz (inschnier) 09.10.2023 10:58 #7512011 Lesenswert? • ▲ ▼ Nachtrag: Natürlich können die zwei irgendwo im Speicher liegenden Personen nicht direkt als Array verwendet werden, das geht nur umständlich. Letztendlich ist das alles Spaghetticode. 1 person person1={"Kurt",44}; 2 person person2={"Felix",55}; 3 person* array[2] = {&person1, &person2}; 4 5 person1.alter = 66; 6 *array[0].alter = 66; Antwort Zitieren Bearbeiten Löschen Beitrag melden
DF Dirk F. (dirkf) OP 09.10.2023 11:25 #7512030 Lesenswert? • ▲ ▼ Danke für eure schnelle Hilfe !! Antwort Zitieren Bearbeiten Löschen Beitrag melden