Externe Verknüpfung
Wenn die erste Deklaration auf Dateibereichsebene für einen Bezeichner nicht den Speicherklassenspezifizierer static
verwendet, verfügt das Objekt über eine externe Bindung.
Wenn die Deklaration eines Bezeichners für eine Funktion über keinen Speicherklassenspezifizierer verfügt, wird seine Bindung genauso bestimmt, als ob sie mit dem Speicherklassenspezifizierer extern
deklariert worden wäre. Wenn die Deklaration eines Bezeichners für ein Objekt dateiweit gilt und keinen storage-class-specifier enthält, ist die Bindung extern.
Der Name eines Bezeichners mit externer Bindung legt dieselbe Funktion oder dasselbe Datenobjekt fest wie jede andere Deklaration für denselben Namen mit externer Bindung. Die beiden Deklarationen können sich in derselben Übersetzungseinheit oder in verschiedenen Übersetzungseinheiten befinden. Wenn das Objekt oder die Funktion auch eine globale Lebensdauer besitzt, ist das Objekt oder die Funktion im gesamten Programm verfügbar.