structure array als parameter übergeben [gelöst]
-
Hallo zusammen, bräuchte Hilfe um das umzusetzen, was ich in den folgenden Kommentaren("/**/") im Code beschreibe:
[code="cpp"]
struct Person {
string nachname, vorname;
int alter;
char geschlecht;
};
Person personen[100] = {
{ "Musterfrau1", "Petra1", 18, 'w' },
//...usw
};
int anzahl_personen = 32;int main() {
/* hier möchte ich der Funktion Filter das struct Person personen[100] übergeben um mit den Werten zu arbeiten doch ich weiss nicht genau wie ich das anstelle*/
filter( &personen[100],anzahl_personen);
system("pause");
return 0;
}/*Funktion die mit den Werten von der struct Person personen[100] arbeiten soll*/
void filter(struct Person personen[], int anzahl_personen)
{
int auswahl;
cout << "Ihre Auswahl: " << endl << "1 - Weibliche Erwachsene ";
cin >> auswahl;
int summe = 0;if (auswahl == 1)
{
for (int i = 0; i < anzahl_personen; i++)
{if (personen[i].alter >= 18 && personen[i].geschlecht== 'w')
{
cout << personen[i].nachname << ", " << personen[i].vorname << ", " << personen[i].geschlecht << ", " << personen[i].alter << endl;
summe++;
}
}
cout << "Summe: " << summe << endl;
}
-
Einfach
filter( personen,anzahl_personen);
Du solltest dir dringend überlegen, dir besseres C++ anzueignen. Dies ist bis auf den string praktisch alles so, wie man es in C machen würde, nicht wie in C++.
-
Vielen Dank für die schnelle Anntwort, hat mein Problem gelöst!!
Hab mich da irgendwie verharkt... und das einfachste scheinbar übersehen
Ich bin Neuling was c++ angeht und lerne grade nur über meinem Uni Kurs "Grundlagen der Informatik und höhere Programmiersprache" c++. Die Aufgabenstellungen sind oft so ausgerichtet, dass man viele c++ Funktionen nicht benutzen darf und elegantere Lösungen umgehen muss. Ich würde mir gerne ausserhalb meines Kurses besseres c++ aneignen, könntest du mir einen Weg (Lektüren etc.)vorschlagen ?
-