Struktur mit Array

Gast #77791
Hi,

da ich immer noch C Anfaenger bin und immer gerne dazu lerne habe ich
mich mit Structuren beschaeftigt. Im Moment durchlaufe ich mein LCD
Menue mittels Variablen und einigen if(oder switch)Abfragen. Es ist so
sehr unuebersichtlich und es neigt sehr stark zu moeglichen
Fehlerquellen. Durch ein bischen Googeln habe ich diesen Code gefunden.
Ich hab mir auch das Butterfly Programm angeschaut.

Leider habe ich mit dieser Struktur meine Probleme und finde keine
Antwort(en).
1. Sollte man nicht noch einen Pointer ueber diese Struktur legen?
   Um den aktuellen Menuwert zuermitteln
2. wie rufe ich genau diese Struktur nun auf?

Ich wuerde mich freuen, wenn mir jemand da helfen koennnte, weil das
Thema Strukturen fuer einen Anfaenger nicht gerade einfach ist.


Hier mal die Struktur aus einem Thread.

typedef struct{
  unsigned char number;
  const char *name;
  unsigned char next;
  unsigned char previous;
  unsigned char sub;
  unsigned char up;
}menustruktur;

Und initalisiert wie folgt:

menustruktur menu[] = {
    {0x01, "Variablen  ", 0x02, 0x04, 0x05, 0x00},
    {0x02, "Programme  ", 0x03, 0x01, 0x07, 0x00},
    {0x03, "Menue 3    ", 0x04, 0x02, 0x00, 0x00},
    {0x04, "Menue 4    ", 0x01, 0x03, 0x00, 0x00},
    {0x05, "Lesen      ", 0x06, 0x06, 0x00, 0x01},
    {0x06, "Schreiben  ", 0x05, 0x05, 0x00, 0x01},
    {0x07, "Aktivieren ", 0x08, 0x08, 0x00, 0x02},
    {0x08, "Aktivieren ", 0x07, 0x07, 0x00, 0x02},
};
Gast
Hallo Dirk!

Such mal nach "Verkettete Liste" oder "Linked List". Du hast schon
richtig erkannt, daß dieses Thema nicht grad einfach zu erklären ist
(für mich jedenfalls). Du wirst auf jeden Fall ne ganze menge dazu
finden.

Gruß,
Patrick...

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 22 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.