Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Include-Dateien

&pagelevel(3)&pagelevel

Jede Bibliotheksfunktion ist in einer Include-Datei deklariert. Viele Bibliotheksfunktionen benutzen symbolische Konstanten und Datentypen, die in Include-Dateien definiert sind. Die als Makros realisierten Bibliotheksfunktionen stehen ebenfalls in Include-Dateien.

Die für die Verwendung von Bibliotheksfunktionen notwendigen Include-Dateien sind Bestandteile der CRTE-Bibliothek SYSLIB.CRTE. Sie sind dort als Quellprogrammelemente (Typ S) abgespeichert und werden bei der Übersetzung auf Grund der Präprozessoranweisung #include in das Programm kopiert. Wie dies geschieht, ist ausführlich in den Com-piler-Benutzerhandbüchern dargestellt.

Folgende Include-Dateien stehen zur Verfügung:

<ascii_ebcdic.h>

<assert.h>

<bs2cmd.h>

<cglobals.h>

<cont.h>

<crduc.h>

<ctype.h>

<errno.h>

<float.h>

<ieee_390.h>

<ilcs.h>

<inttypes.h>

<iso646.h>

<limits.h>

<locale.h>

<math.h>

<setjmp.h>

<signal.h>

<stdarg.h>

<stddef.h>

<stdio.h>

<stdlib.h>

<string.h>

<strings.h>

<stxit.h>

<sys.timeb.h>

<sys.types.h>

<time.h>

<timeb.h>

<wchar.h>

<wctype.h>





Die Include-Dateien enthalten u.a. Folgendes:

  • Definitionen von symbolischen Konstanten mit den für die ordnungsgemäße Funktionsausführung notwendigen Werten, z.B.:

    BUFSIZ

    Betriebssystemspezifische Standardgröße des Ein-/Ausgabepuffers (8192
    Bytes).

    EOF

    Dateiende-Kriterium (-1)

    WEOF

    Dateiende-Kriterium für Langzeichen-Dateien (L“-1“)

    _NFILE

    Maximal erlaubte Anzahl der gleichzeitig geöffneten Dateien einschließlich
    der Standarddateien stdin, stdout und stderr (2048).

    NULL

    NULL-Zeiger (0)

  • Definitionen von Datentypen und Strukturen, die von den Funktionen benutzt werden, z.B.:

    FILE

    Die meisten Ein-/Ausgabefunktionen benutzen einen Zeiger auf eine Struktur
    vom Typ FILE (siehe auch Abschnitt "FILE-Struktur“ (Grundbegriffe))

    mbstate_t

    Dieser Datentyp wird von den Multibyte-Funktionen benutzt und entspricht
    in dieser Implementierung dem Typ char.

    size_t

    Dieser Datentyp wird von vielen Zeichenkettenfunktionen benutzt und
    entspricht in dieser Implementierung dem Typ unsigned.

    ptrdiff_t

    Dieser Datentyp wird für das Ergebnis einer Subtraktion von Zeigern
    verwendet und entspricht in dieser Implementierung dem Typ integer.

    wint_t

    Dieser Datentyp enthält Werte, die den Elementen des erweiterten Charac-
    ter-Sets entsprechen oder den Wert WEOF (Ende der Eingabe). In dieser
    Implementierung entspricht dieser Datentyp dem Typ integer.

    wchar_t

    Dieser Datentyp wird von den Multibyte-Funktionen benutzt und entspricht
    in dieser Implementierung dem Typ long.

    wctrans_t

    Skalarer Datentyp, der Lokalitäten-spezifische Zeichenabbildungen
    repräsentiert.

    wctype_t

    Skalarer Datentyp, der Lokalitäten-spezifische Zeichenklassen repräsentiert.
    In dieser Implementierung entspricht dieser Datentyp dem Typ long.

    clock_t

    Dieser Datentyp wird von der Funktion clock benutzt und entspricht in dieser
    Implementierung dem Typ integer.

    time_t

    Dieser Datentyp wird von vielen Zeitfunktionen benutzt und entspricht in dieser
    Implementierung dem Typ long.

    va_list

    Dieser Datentyp wird von den Funktionen benutzt, die variable Argumentenlisten
    bearbeiten (z.B. vprintf).

  • Die Prototyp-Deklaration aller Funktionen

    Vor Aufruf einer Funktion muss der Datentyp bekannt, d.h. deklariert sein. Dies ist mit dem Einfügen der entsprechenden Include-Datei gewährleistet. In den Übersetzungsmodi „ANSI“ und „STRICT-ANSI“ erhält man eine Warnung, wenn die Deklaration fehlt. Im Übersetzungsmodus „CPLUSPLUS“ erhält man bei einer fehlenden Deklaration einen Fehler und es wird kein Modul erzeugt.

    Siehe auch Abschnitt "Präprozessor-Define _STRICT_STDC“.

  • Die Definition aller Makros

    Einige Bibliotheksfunktionen sind als Makros realisiert. Um ein Makro benutzen zu können, muss die jeweilige Include-Datei in das Programm eingefügt werden.

Für den Aufruf von C-Bibliotheksfunktionen aus C++-Quellen enthalten die Include-Dateien für alle Funktionen und Daten extern "C"-Deklarationen.

Include-Datei iso646.h

Die Include-Datei iso646.h enthält die folgenden 11 Makros, die zu den jeweils dahinterstehenden Schreibweisen expandiert werden und damit alternative Schreibweisen für die Operatoren darstellen:

and

&&

              

compl

~

              

or_eq

|=

and_eq

&=

 

not

!

 

xor

^

bitand

&

 

not_eq

!=

 

xor_eq

^=

bitor

|

 

or

| |