Zweidimensionales Array mit festen Adressen

Gast #724594
Lesenswert?

Hallo,

ich habe einen festen Speicherbereich und möchte diesen als Grundlage 
für ein zweidimensionales Array verwenden.

Zum Beispiel:

Array Adr0
0x0000     Adr0a
0x0001     Adr0b
0x0002     Adr0c
0x0003     Adr0d
0x0004     Adr0e

Array Adr1
0x0005     Adr1a
0x0006     Adr1b
0x0007     Adr1c
......     ....


Adr0, Adr1, etc. sind als Arrays bereits definiert und die Adressen 
bekannt.

Die Adresse 0x0002 könnte man also mit Adr0[2] ansprechen. Ich möchte 
sie aber mit Adr[0][2] ansprechen, d.h. die Bezeichner der Arrays (Adr0, 
Adr1,...) selbst sind nochmal in Arrays gefasst. Dies dient nur zur 
besseren Lesbarkeit des Codes.

Könnte ich also ein Array von Pointern auf die Arrays Adr0, Adr1 etc. 
anlegen, und dann die einzelnen Werte wie oben beschrieben adressieren?

Gibt es noch andere Lösungen?
Persönliche Seite #724876
Lesenswert?

Dir geht es also darum, wie man von Hand zu Fuss bei gegebener 
Spalte/Zeile ein Element in einem zweidimensionalen Array indizieren 
kann.

Voraussetzung dafür ist, dass deine können als zweidimensionales Array 
abgelegt werden können/sind, d.h. sie müssen identische Elementanzahl 
pro Dimension haben.

Lies dich dazu vielleicht in die C FAQ ein, speziell Frage und Antwort 
2.11 und folgende.
http://www.dclc-faq.de/kap2.htm

Warum willst du das überhaupt machen?

Eine Alternative zum mehrdimensionalen Array zwecks "Zusammenhalten" der 
Daten im Quelltext, wäre z.B. eine umfassende Struktur in der Art:
1
struct {
2
   char Adr0[MAXDIM_0];
3
   char Adr0[MAXDIM_1];
4
};

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren