Crt0
# Crt0

crt0 (auch bekannt als c0) bezeichnet die grundlegenden Programm-Initialisierungsfunktionen eines in C oder C++ geschriebenen Programms. Dazu gehören beispielsweise das Anlegen des Stacks, das Initialisieren globaler Variablen. Dabei ist crt die Abkürzung für C runtime, die Null steht für ganz am Anfang. Auch der Sprung auf main(…), der Einsprungpunkt eines C- oder C++-Programms, ist dort codiert.
Der Inhalt von crt0 hängt wesentlich vom verwendeten Compiler, dem Betriebssystem und der Implementierung der C-Standard-Bibliothek ab. Bei C++ werden zum Beispiel die globalen Konstruktoren darin initialisiert. Auch anwendungsspezifische Erweiterungen können eingefügt werden.