Online C Compiler
Im Compiler öffnen

Deutsche Lernausgabe

Nicht aufgelöste Referenz in C

Verstehen Sie den Unterschied zwischen Deklaration und Definition beim Linken.

Im Compiler öffnen

Nicht aufgelöste Referenz in C
Verstehen Sie den Unterschied zwischen Deklaration und Definition beim Linken.

Der Compiler kann den Aufruf einer deklarierten Funktion akzeptieren, doch der Linker muss ihre Definition finden. Ein Header liefert gewöhnlich Deklarationen; er ersetzt nicht den übersetzten Code einer Bibliothek.

Prüfen Sie Schreibweise und Großschreibung der Namen, das Vorhandensein von main und die einbezogenen Quelldateien. Eine in einer anderen Datei definierte Funktion wird nicht gefunden, wenn diese Datei nicht übersetzt und mit dem Programm gelinkt wird.

Kontrollieren Sie benötigte Bibliotheken und deren Reihenfolge, die je nach Linker relevant sein kann. Prüfen Sie beim Mischen von C und C++ auch die Namensbindung. Eine leere Ersatzfunktion verdeckt den Fehler, ohne das erwartete Verhalten bereitzustellen.

Quellcode

#include <stdio.h>

int main(void)
{
    puts("The program started.");
    return 0;
}
Im Compiler öffnen

Häufige Fragen

Warum bleiben Code und manche Ausgaben englisch?

C-Schlüsselwörter, Bezeichner, Programmkommentare und erwartete Ausgaben bleiben wie im Original, damit der Code ausführbar und die Tests konsistent bleiben. Erklärungen und Aufgabenstellungen sind übersetzt.