Error-Makro funktioniert nicht.

OP #3932017
Lesenswert?
• ▲
▼
Morgen,

weis Jemand wieso diese Makros nicht funktionieren?


Die Variablen Brightness und Channel stehen in einer Methode (sind die 
Parameter der Methode).

--> void Set_Channel_Brightness ( uint8_t Channel, uint16_t Brightness )

{
...
}
Angehängte Dateien:
#3932048
Lesenswert?
• ▲
▼
Christian Karle schrieb:
> Es kommt keine Fehlermeldung zurück...

Das ist kein Kriterium. Der Präprozessor ist bekannt dafür, bei 
Rechenausdrücken in #if noch im grössten Blödsinn einen Sinn zu 
erkennen. So beispielsweise wenn er Namen darin nicht kennt. Weil er, 
wie de Name schon sagt, (formell) vor dem Compiler vorneweg läuft und 
deshalb dessen Variablen nicht kennt.
Gast #3932071
Lesenswert?
• ▲
▼
..wenn Du
1
#if
durch
1
if (
und
1
#error
durch
1
)
2
{
3
    traceError(
sowie
1
#endif
durch
1
);
2
    return errorCondition;
3
}

..ersetzt dann geht das auch zur Laufzeit. traceError und errorCondition 
(sowie der zugehörige Rückgabetyp) müssen latürnich noch richtig(tm) 
hingeschreiben werden.

HTH

Antwort schreiben

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.

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.