Hallo zusammen, ich habe ein Problem mit einem Array. Ich möchte für eine Menge von Daten jeweils ein Array für 2 Sprachen erstelen. Dies soll z.B. so aussehen: char str_klasse [][] = {"Hund" , "Dog"}; Nur müßte ich in diesem Fall immer die Arraylänge ab dem 2ten Array angeben. Geht das auch irgendwie ohne diese Angabe? Gruß Bruno
Hallo Bruno, >Nur müßte ich in diesem Fall immer die Arraylänge ab dem 2ten Array >angeben. >Geht das auch irgendwie ohne diese Angabe? Ich verstehe deine Frage leider irgendwie nicht, könntest du das näher erläutern? Schöne Grüße, Alex
Man muß in C ab dem 2ten Array-Eintrag die Länge angeben (bei einem String). In diesem Fall müßte ich den Array so beschreiben: char str_klasse [][4] = {"Hund" , "Dog"}; Dann is das kein Problem. Aber da ich eine Menge von Daten habe möchte ich das vermeiden.
Und die...
>Menge von Daten
...liegt vermutlich während der Compile-Zeit noch nicht vor :-)
Hmm, so spontan wüsste ich da außer malloc() auch nichts.
Doch das schon aber bei der Menge is man da schnell bei Fehlern oder verschwendet Speicherplatz.
Wenn du zur Laufzeit nichts in die Tabelle reinschreibst, dann lautet der Klassiker char *str_klasse[][2] = {{"Hund" , "Dog"},{...}}; Wenn doch, und du nicht in der Lage bist für die 2. Dimension eine sinnvolle Obergrenze anzugeben, dann wirst du das anders lösen müssen. Dynamische Allokation wurde schon genannt, nur pflege ich die bei Controllern nur höchst ungern zu verwenden.
Damit is mir aber schon geholfen. Die Anzahl der Sprachen würde ja überall gleich sein. Danke
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.