Auswertung die IF-Bedingungen

Gast #4919982
Lesenswert?
• ▲
▼
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
Lesenswert?
• ▲
▼
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
Lesenswert?
• ▲
▼
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

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