Was ist ein Präprozessor?

Wenn jemand in der Computerbranche von einem Prozessor spricht, meint er im Allgemeinen eine Art Siliziumchip, der Berechnungen durchführt. Das P in CPU, GPU, APU, NPU und vielen anderen Formen von Logikchips steht für „Processing“, dh Central Processing Unit. Jeder von ihnen ist ein bestimmter Prozessortyp, der für seine spezifische Funktion optimiert ist. Ein Präprozessor hat jedoch nichts mit physischen Prozessoren wie der CPU oder GPU zu tun. Stattdessen ist es ein Programmierbegriff, der sich speziell auf kompilierte Sprachen bezieht.

Was ist ein Compiler?

Ein Compiler ist eine Software, die eine bestimmte Programmiersprache in Maschinencode kompiliert. Alle Programmiersprachen müssen in Maschinencode umgewandelt werden, da die für Menschen lesbaren Anweisungen, aus denen verwendbare Programmiersprachen bestehen, nicht direkt vom Computer ausführbar sind. Einige sind so konzipiert, dass sie spontan interpretiert werden, wenn der Code ausgeführt wird. Dieser Ansatz ist sehr flexibel und macht es einfach, geringfügige Änderungen vorzunehmen. Viele andere Programmiersprachen müssen jedoch kompiliert werden, um ausgeführt werden zu können. Bei kleinen Programmen dauert das nicht unbedingt lange. Bei größeren Programmen kann die Kompilierung jedoch Minuten oder sogar Stunden dauern.

Warum sollten Sie also eine Sprache verwenden, die kompiliert werden muss? Nun, es ist schwieriger, ein Reverse Engineering durchzuführen. Interpretierte Programmiersprachen haben ihren Code oft so verteilt, wie er ist, was es leicht macht, ihn zu „stehlen“. Für Unternehmen, die ihr geistiges Eigentum schützen möchten, fügt das Kompilieren einen komplexen und unzuverlässigen Schritt des Reverse Engineering ein, um den tatsächlichen Code anzuzeigen. Kompilierte Software ist tendenziell auch kleiner, da sie für die Ausführung optimiert wurde. Bei kleinen Skripten ist das kein wirkliches Problem, aber bei großer Software mit Hunderten von Megabytes oder sogar Gigabytes Größe kann dies einen spürbaren Effekt haben.

Was macht ein Präprozessor?

Ein Präprozessor ist ein Dienstprogramm, das über Code ausgeführt wird, bevor er kompiliert wird. Typischerweise ruft ein Compiler den Präprozessor beim Start automatisch auf, sie können jedoch auch separat ausgeführt werden. Die Aufgabe des Präprozessors besteht darin, den Code genau wie beabsichtigt einzurichten. Dies geschieht hauptsächlich durch Ausführen von Such- und Ersetzungsfunktionen.

In C beispielsweise ist es üblich, eine Reihe von Standardbibliotheken zu verwenden. Diese Bibliotheken definieren eine Reihe von Funktionen, die Standardfunktionen bereitstellen. Um diese Bibliotheken zu importieren, wird das Schlüsselwort „#include“ gefolgt von einem Bibliotheksnamen verwendet. Der Präprozessor durchsucht den Code nach Anweisungen wie „#include“ und ersetzt diese. Bei „#include“ fügt der Präprozessor den gesamten Inhalt der angegebenen Bibliothek ein.

Auf diese Weise können Sie den tatsächlich geschriebenen Code leicht lesbar halten und gleichzeitig viele leistungsstarke und bereits vorhandene Tools verwenden. Es erspart Ihnen, das Rad für jede Anwendung neu zu erfinden oder einen Teil oder die gesamte Bibliothek in die Codebasis einzufügen.

Eine weitere mögliche Verwendung eines Präprozessors besteht darin, je nach Absicht des Builds bestimmte Funktionen zu entfernen oder hinzuzufügen. Wenn Sie beispielsweise einen neuen Build testen möchten, kann es sehr nützlich sein, eine Reihe von Debugging-Schritten einzufügen. Diese werden nicht nur in Release-Builds nicht benötigt, sondern machen die kompilierte Software tatsächlich größer. Ein Präprozessor kann Compiler-Argumente prüfen und feststellen, ob bestimmte Funktionen eingeschlossen oder ignoriert werden müssen. Ähnlich wie hier entfernt ein Präprozessor normalerweise Kommentare vor dem Compiler, da diese nicht in einem Build enthalten sein sollten.

Abschluss

Ein Präprozessor ist ein Werkzeug, das von einem Compiler ausgeführt wird, um den Code zu manipulieren, bevor er tatsächlich kompiliert wird. Während der Präprozessor separat aufgerufen werden kann, wird er normalerweise als Teil des Kompilierungsprozesses aufgerufen. Der Präprozessor sucht nach bestimmten definierten Zeichenfolgen und ersetzt sie durch Standardinhalte. Bei Kommentaren gibt es keine Ersetzung, aber bei Anweisungen, die externe Bibliotheken enthalten, ersetzt der Präprozessor die Anweisung durch den Inhalt der tatsächlichen Bibliothek. Der Präprozessor kann auch Argumente zur Kompilierzeit verwenden, um bestimmte Funktionen zu gaten. Dies wird häufig verwendet, um Debug-Funktionen in Test- oder Release-Builds einzubeziehen oder auszuschließen.



Leave a Comment

Was tun, wenn Powerbeats Pro nicht im Ladecase aufgeladen werden?

Was tun, wenn Powerbeats Pro nicht im Ladecase aufgeladen werden?

Wenn Ihre Powerbeats Pro nicht aufgeladen werden, verwenden Sie eine andere Stromquelle und reinigen Sie Ihre Ohrhörer. Lassen Sie das Ladecase geöffnet, während Sie Ihre Ohrhörer aufladen.

3D-Druck Grundlagen: Eine unverzichtbare Wartungscheckliste

3D-Druck Grundlagen: Eine unverzichtbare Wartungscheckliste

Die Wartung Ihrer Geräte ist ein Muss. Hier finden Sie nützliche Tipps, um Ihren 3D-Drucker in Top-Zustand zu halten.

Canon Pixma MG5220: Scannen ohne Tinte

Canon Pixma MG5220: Scannen ohne Tinte

Wie man das Scannen mit dem Canon Pixma MG5220 aktiviert, wenn die Tinte ausgeht.

5 Gründe, warum Ihr Laptop überhitzt

5 Gründe, warum Ihr Laptop überhitzt

Erfahren Sie mehr über einige mögliche Ursachen, warum Ihr Laptop überhitzt, sowie Tipps und Tricks zur Vermeidung dieses Problems und zur Kühlung Ihres Geräts.

So beheben Sie den GeForce Now Fehlercode 0xC272008F

So beheben Sie den GeForce Now Fehlercode 0xC272008F

Sie machen sich bereit für eine große Gaming-Nacht – Sie haben gerade “Star Wars Outlaws” auf dem GeForce Now Streaming-Dienst erworben. Entdecken Sie die einzige bekannte Lösung, die Ihnen zeigt, wie Sie den GeForce Now Fehlercode 0xC272008F beheben können, damit Sie wieder Ubisoft-Spiele spielen können.

3D-Druck Grundlagen: Wartungstipps für Ihren 3D-Drucker

3D-Druck Grundlagen: Wartungstipps für Ihren 3D-Drucker

Die Wartung Ihrer 3D-Drucker ist sehr wichtig, um die besten Ergebnisse zu erzielen. Hier sind einige wichtige Tipps, die Sie beachten sollten.

So finden Sie die IP-Adresse eines Druckers

So finden Sie die IP-Adresse eines Druckers

Haben Sie Schwierigkeiten herauszufinden, welche IP-Adresse Ihr Drucker verwendet? Wir zeigen Ihnen, wie Sie sie finden.

So verwenden Sie AirPods mit Samsung-Handys

So verwenden Sie AirPods mit Samsung-Handys

Wenn Sie sich unsicher sind, ob Sie AirPods für Ihr Samsung-Handy kaufen sollen, kann dieser Leitfaden Ihnen auf jeden Fall helfen. Die offensichtlichste Frage ist, ob die beiden kompatibel sind, und die Antwort lautet: Ja, das sind sie!

Fix: Chromebook „Fehler beim Konfigurieren des Netzwerks“

Fix: Chromebook „Fehler beim Konfigurieren des Netzwerks“

Wenn auf Ihrem Chromebook beim Konfigurieren des Netzwerks ein Fehler aufgetreten ist, aktivieren Sie die Netzwerkfreigabe, starten Sie Ihren Laptop neu und trennen Sie Ihren Router.

Grundlagen des 3D-Drucks: Was ist MSLA 3D-Druck?

Grundlagen des 3D-Drucks: Was ist MSLA 3D-Druck?

Maskiertes Stereolithographiegerät (MSLA) ist eine modifizierte Form des SLA-Drucks und bietet zahlreiche Vorteile, einschließlich schnelleren Druckzeiten.