Hallo und willkommen.
In diesem Video werden wir über Compiler-Warnungen in einem großen, großen Tipp sprechen.
Ignorieren Sie keine Compiler-Warnungen.
Oft sieht man sie im Ausgabefenster des Builds und einige neue Programmierer ignorieren sie einfach.
Sie sollten sie nicht ignorieren.
Grundsätzlich weisen Warnungen des Compilers darauf hin, dass es in Ihrem Code ein Problem gibt, das zu einem möglichen
Problem führen könnte.
Der Code ist syntaktisch korrekt.
Der Compiler ist in der Lage, Objektcode zu erzeugen und Ihr Programm zu generieren, aber es ist kein perfekter Code
und es könnte Probleme mit dem Code geben.
Es ist wieder nur eine Warnung, denn syntaktisch ist es korrekt und man kann den Maschinencode erzeugen.
Wenn wir zum Beispiel eine Variable namens total erstellen und dann versuchen, den Wert dieser Variable total anzuzeigen,
erhalten wir eine Warnung im Build-Ausgabefenster, dass total verwendet wird.
Aber das ist nicht der Fall, aber es ist nicht initialisiert.
Und das bedeutet im Grunde genommen, dass die Summe keinen Wert hat, der mit ihr verbunden ist.
Sie befindet sich irgendwo im Speicher und hat keinen Wert.
Wenn Sie also versuchen, diesen Wert anzuzeigen, kann alles Mögliche angezeigt werden.
Auch hier ist es syntaktisch korrekt, aber Sie müssen Ihre Variable nicht wirklich initialisieren.
Das sagt Ihnen der Compiler, und deshalb sollten Sie Compilerfehler nicht ignorieren.
Tatsächlich behandeln die meisten Programmierer Warnungen als Fehler und beheben alle ihre Warnungen.
Jetzt schalten wir tatsächlich die Compiler-Warnungen für alle ein.
Warnungen, denn es gibt verschiedene Kategorien von Warnungen, die Sie ein- und ausschalten können.
Wir verwenden das Compilerflag dash w all, damit alle Warnungen angezeigt werden, und Sie sollten wirklich alle Ihre Warnungen korrigieren.
Schauen wir uns also ein Beispiel im Code an, z. B. hier unser Hello World-Beispiel.
Lassen Sie uns einfach das tun, was wir gerade in der Folie getan haben, und eine Variable total erstellen, ohne ihr einen Wert zuzuweisen,
und dann versuchen, sie auszudrucken.
Wenn wir also total is sagen und versuchen, es auszudrucken, und dann versuchen, es zu kompilieren, werden Sie sehen, dass wir eine Warnung
erhalten, richtig?
Grundsätzlich wird bei der Initialisierung die Angabe total verwendet.
Wir können das Programm trotzdem ausführen.
Wenn wir auf "Build" gehen, können wir es ausführen, weil es wieder in der Lage ist, den Code zu generieren.
Es ist nur eine Warnung.
Und was wir sehen, ist, dass die Gesamtzahl Null ist und das kann eigentlich jede Zahl sein, weil sie im C-Programm
nicht initialisiert wurde.
Und Sie wollen immer alle Ihre Variablen initialisieren, so dass sie tatsächlich einen gültigen Wert enthalten.
Häufig wird in C der Speicher, in dem eine Variable gespeichert ist, von einem früheren Programm geerbt.
Wenn Sie also Ihre Variable nicht initialisieren, kann sie alles Mögliche sein.
In diesem Fall war es zufällig Null, als Sie rannten.
Aber wir hatten einfach Glück, oder?
Es könnte ein beliebiger Wert sein.
Daher sollten Sie diese Warnungen immer beheben.
Wenn wir nun zu unserer Hello World-Anwendung zurückkehren, gehen wir zu Projekt drei und machen es zum aktiven
Projekt.
Wenn wir hier eine Anwendung des Typs Hello world haben, erstellen wir eine tatsächliche Variable Again, total, wir initialisieren
sie, damit wir keine Initialisierungswarnung erhalten, und wir versuchen, sie zu kompilieren.
Und in diesem Fall, wenn wir kompilieren, sehen wir eine andere Art von Warnung, richtig?
Unbenutzte Variable.
Das heißt also, dass wir eine Variable erstellt, aber nie benutzt haben.
Wir haben sie nie ausgestellt.
Wir haben es nie zum Rechnen oder für arithmetische Berechnungen oder ähnliches verwendet.
Warum also schaffen wir sie?
Warum erstellen Sie eine Variable, die Sie nie verwenden?
Es ist eine Art verschwenderischer Code, toter Code.
Sie sollten sie also löschen, richtig?
Da wir eine unbenutzte Variable haben, können wir die Initialisierung entfernen und sie trotzdem nicht verwenden, richtig?
Wenn wir also etwas wie das hier haben und es speichern und wieder kompilieren, werden Sie eine unbenutzte
Variable sehen.
Die Warnung vor unbenutzten Variablen hat also Vorrang vor der Initialisierungswarnung, wir haben sie nie benutzt.
Wir werden also viele Warnungen in Ihrem Code sehen, während wir über if-Anweisungen und while-Schleifen und
all die verschiedenen Konzepte von C lernen. Wir werden über einige dieser Warnungen in späteren Vorlesungen sprechen.
Aber was Sie aus diesem Vortrag lernen sollten, ist, dass Warnungen eine große Sache sind.
Sie sollten die Warnungen nicht ignorieren.
Sie sollten sogar eine Richtlinie einführen, die besagt, dass Sie jedes Mal, wenn Sie eine Warnung sehen, das Problem beheben wollen.
Ignorieren Sie keine Warnungen.
Ich danke Ihnen.