Es steht Ihnen frei, die Warnung auszuschalten oder sie lieber auszuschalten, da sie standardmäßig ausgeschaltet ist …
– R.. GitHub HÖR AUF, EIS ZU HELFEN
29. März 2011 um 17:54 Uhr
Ich bin irgendwie geistesabwesend, also bin ich dankbar für pedantisch, -Wall, -Wextra, -Wshadow und dergleichen
– F.P
29. März 2011 um 18:03 Uhr
Nun, Sie können hinzufügen -Wno-parentheses (Ich glaube, das ist die richtige), um diese spezielle Warnung zu deaktivieren. Wenn Sie jedoch so geistesabwesend sind, achten Sie darauf, nicht zu schreiben = Anstatt von ==…
– R.. GitHub HÖR AUF, EIS ZU HELFEN
29. März 2011 um 18:08 Uhr
Mögliches Duplikat von Warnung: Klammern um Zuweisung vorschlagen while (*(arg_to++) = *(arg_from++));
– jpaugh
19. Januar 2018 um 22:57 Uhr
Seien Sie explizit – dann wird der Compiler nicht warnen, dass Sie vielleicht einen Fehler gemacht haben.
while ( (list = list->next) != NULL )
oder
while ( (list = list->next) )
Eines Tages wirst du froh sein, dass der Compiler es dir gesagt hat, Leute tun diesen Fehler machen 😉
Menschen tun! Genau aus diesem Grund habe ich früher geschrieben if (0 == varName) in C, damit ich eine Fehlermeldung bekomme, wenn ich mich vertippe.
– jpaugh
19. Januar 2018 um 22:56 Uhr
@jpaugh Das nennt man eine Yoda-Bedingung. Es hat eine Wikipedia-Seite 🙂
– Lars Nyström
11. April 2021 um 16:51 Uhr
@LarsNyström Freut mich, das zu wissen!
– jpaugh
11. April 2021 um 17:03 Uhr
Geekosaurier
Während diese bestimmte Redewendung üblich ist, wird sie von Menschen noch häufiger verwendet = wenn sie meinen ==. Die Konvention, wenn Sie die wirklich meinen = ist eine zusätzliche Ebene von Klammern zu verwenden:
while ((list = list->next)) { // yes, it's an assignment
Es ist nur eine “Sicherheits”-Warnung. Es ist eine relativ häufige Redewendung, aber auch ein relativ häufiger Fehler, wenn Sie es beabsichtigt haben == da drin. Sie können die Warnung verschwinden lassen, indem Sie weitere Klammern hinzufügen:
while ((list = list->next))
14120800cookie-checkCompiler-Warnung – schlägt Klammern um die Zuweisung vor, die als Wahrheitswert verwendet wirdyes
Es steht Ihnen frei, die Warnung auszuschalten oder sie lieber auszuschalten, da sie standardmäßig ausgeschaltet ist …
– R.. GitHub HÖR AUF, EIS ZU HELFEN
29. März 2011 um 17:54 Uhr
Ich bin irgendwie geistesabwesend, also bin ich dankbar für pedantisch, -Wall, -Wextra, -Wshadow und dergleichen
– F.P
29. März 2011 um 18:03 Uhr
Nun, Sie können hinzufügen
-Wno-parentheses
(Ich glaube, das ist die richtige), um diese spezielle Warnung zu deaktivieren. Wenn Sie jedoch so geistesabwesend sind, achten Sie darauf, nicht zu schreiben=
Anstatt von==
…– R.. GitHub HÖR AUF, EIS ZU HELFEN
29. März 2011 um 18:08 Uhr
Mögliches Duplikat von Warnung: Klammern um Zuweisung vorschlagen while (*(arg_to++) = *(arg_from++));
– jpaugh
19. Januar 2018 um 22:57 Uhr