Prototypen von Variablen?

Gast #181309
Hallo,
ich möchte doppelt verkettete Listen in meinem Programmspeicher
ablegen. Das da unten ist nur sehr stark auf das eigentliche Problem
reduziert.

MS MENU_Main[2] PROGMEM ={
{&MENU_Bla1[0]},
{0},
};

MS MENU_Bla1[2] PROGMEM = {
{&MENU_Main[0]},
{0},
};

Der Compiler meckert jetzt, dass er MENU_Bla1 noch nicht kennt. Gibt es
eine Möglichkeit eine Art prototyp von MENU_Bla1 zu deklarieren?

Ich hatte das ganze erst als Objekte, die haben aber dank haufenweise
Strings nicht in den RAM gepasst. Sonst fällt mir nur noch ein, dass
ich die Strings in den Programmspeicher lassen könnte und meinem
Constructor die Adresse des Strings übergebe - aber das gefällt mir
eigentlich nicht so gut ...
Gast #181310
Versuch mal die Variablen vorher per extern zu deklarieren
(ich weiss aber nicht ob das PROGMEM noch dazu muß)

extern MS MENU_Bla1[2];
extern MS MENU_Main[2];

MS MENU_Main[2] PROGMEM ={
{&MENU_Bla1[0]},
{0},
};

MS MENU_Bla1[2] PROGMEM = {
{&MENU_Main[0]},
{0},
};

Gruss

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 21 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.