mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik Char Array Mehrdimensional


Autor: Bruno (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Alex Bürgel (Firma: Ucore Fotografie www.ucore.de) (alex22) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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

Autor: Bruno (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Alex Bürgel (Firma: Ucore Fotografie www.ucore.de) (alex22) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Bruno (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Doch das schon aber bei der Menge is man da schnell bei Fehlern oder 
verschwendet Speicherplatz.

Autor: Andreas K. (a-k)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
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.

Autor: Bruno (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Damit is mir aber schon geholfen. Die Anzahl der Sprachen würde ja 
überall gleich sein.
Danke

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.