Auswertung die IF-Bedingungen

Gast #4919982
Hallo Experten,

eine Frage bezüglich zwei Bedingungen in If-Operator.

Beispiel:

if(a==(b&0x01) && d!=c)
{}

Soll man die Teile, die mit dem UND'&&' getrennt sind. mit dem 
Klammern() umschlagen oder so eine Schreibweise schon richtig ist.

if((a==(b&0x01)) && (d!=c))

Mein Problem ist, dass der Compiler mit den Warnungen meckert.

Binary operator other than + - * / % used with binary operator of 
different precedence. Extra parentheses recommended.

Binary/ternary operator used with && or ||. Extra parentheses 
recommended.


mfg. Alex
Gast #4920003
der compiler wird wohl merken das du zwei vergleiche mit AND verknüpfst, 
aber er warnt dich das man um die einzelnen boolschen ausdrücke besser 
klammern machen sollte.
ich würde sie machen, andere würden so wenig hinschreiben wie möglich. 
geschmackssache.

ich würde wahrscheinlich auch selbstsprechende variablennamen nehmen, 
nicht a,b,c,tt… ;-)
Gast #4920152
So eine Warnung kannst Du abschalten, wenn Du sicher bist, dass jeder, 
der den Code später liest oder wartet, ohne Nachzudenken weiss, dass && 
später bindet als !=/== .

Andernfalls Klammere. Klammern sind bei solchen Zeilen meist nicht das 
Problem.

Antwort schreiben

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