_atold

Prototyp : long double _atold(const char *s);
Header : <stdlib.h>

Beschreibung :
_atold konvertiert den durch s bezeichneten String in eine Gleitkommazahl und liefert das Ergebnis als long double zurück. Der String muß dem folgenden Format entsprechen:

_atold erkennt zusätzlich +INF und -INF als positive bzw. negative Unendlichkeit sowie +NAN und -NAN (für "Not a Number" - ein nicht numerisch darstellbarer Wert). Die Konvertierung bricht beim ersten nicht-interpretierbaren Zeichen ab. _strtold arbeitet ähnlich wie _atold, erlaubt aber eine bessere Fehlerbehandlung und wird daher in manchen Anwendungen bevorzugt.

Rückgabewert :
_atold liefert den konvertierten Wert des Eingabestrings zurück. Im Fall eines Überlaufs liefert _atold den Wert +LHUGE_VAL oder -LHUGE_VAL zurück und errno wird auf ERANGE gesetzt.



_dos_allocmem

Prototyp : unsigned _dos_allocmem(unsigned size, unsigned *segp);
Header : <dos.h>

Beschreibung :
_dos_allocmem verwendet die DOS-Funktion 0x48, um einen Speicherblock für das aktuelle Programm zu reservieren, und gibt die Segmentadresse des belegten Blocks zurück. Über den Parameter size wird die Größe des zu belegenden Blocks in Paragraphen angegeben. segp zeigt auf das Doppel-Wort, dem die Segmentadresse des belegten Blocks zugewiesen wurde. Ist kein Block der angegebenen Größe verfügbar, führt _dos_allocmem keine Zuweisung an das DWORD durch, auf das segp zeigt. _dos_allocmem speichert in diesem Fall die Größe (in Paragraphen) des größten verfügbaren Blocks in dem DWORD, auf das segp zeigt.
Die durch _dos_allocmem belegten Speicherbereiche sind auf Paragraphengrenzen ausgerichtet.

Rückgabewert :
_dos_allocmem gibt den Wert 0 zurück, wenn ein Speicherbereich in der gewünschten Größe reserviert werden konnte. Andernfalls wird der DOS-Fehlercode zurückgegeben und das DWORD, auf das segp zeigt, auf die Größe des größten noch verfügbaren Speicherblocks (in Paragraphen) gesetzt.

Konnte _dos_allocmem nicht erfolgreich durchgeführt werden, erhält die globale Variable errno den folgenden Wert:

ENOMEM   Nicht genügend freier Arbeitsspeicher



_dos_close

Prototyp : unsigned _dos_close(int handle);
Header : <dos.h>

Beschreibung :
 _dos_close schließt die durch handle bezeichnete Datei. handle ist ein Datei-Handle, das durch einen Aufruf von _dos_creat, _dos_creatnew oder _dos_open einer Datei zugeordnet wurde.

 Rückgabewert :
 _dos_close liefert den Wert 0 zurück, wenn die Operation fehlerfrei ausgeführt werden konnte. Andernfalls liefert die Funktion den DOS-Fehlercode, und die globale Variable errno erhält den Wert:

EBADF Ungültiges Handle



_dos_creat

Prototyp : unsigned _dos_creat(const char *path,int attrib,int *handlep);
Header : <dos.h>

Beschreibung :
Die Funktion _dos_creat öffnet die durch path bezeichnete Datei grundsätzlich im binären Modus. Nach einer fehlerfreien Öffnung bzw. Erzeugung zeigt der Dateizeiger auf das erste Byte der Datei. _dos_creat speichert das Datei-Handle an der durch handlep bezeichneten Position. Die Datei wird für Lese- und Schreibzugriffe geöffnet. Wenn die Datei bereits existiert, wird sie auf null Bytes Länge verkürzt (d.h. der vorherige Inhalt wird gelöscht).

Der Parameter attrib der Funktion _dos_creat enthält eine ODER-Kombination aus einer oder mehreren der folgenden in dos.h definierten Konstanten:

_A_NORMAL Normale Datei
_A_RDONLY Nur-Lesen-Datei
_A_HIDDEN Verborgene Datei
_A_SYSTEM Systemdatei

Rückgabewert :
_dos_creat liefert bei fehlerfreier Ausführung 0, andernfalls wird der Fehlercode des Betriebssystems zurückgeliefert. Im Fehlerfall wird die globale Variable errno auf einen der folgenden Werte gesetzt (dies gilt für creat und _dos_creat):

EACCES Zugriff nicht erlaubt
ENOENT Pfad/Datei nicht gefunden
EMFILE Zu viele offene Dateien



_dos_creatnew

Prototyp : unsigned _dos_creatnew(const char *path, int attrib, int *handlep);
Header : <dos.h>

Beschreibung :
_dos_creatnew erzeugt und öffnet die durch path bezeichnete Datei im binären Modus. Die Datei erhält die Zugriffsberechtigung attrib (ein Attributwort des Betriebssystems). Nach einer fehlerfreien Erzeugung wird das Datei-Handle an der durch handlep bezeichneten Adresse gespeichert und der Dateizeiger zeigt auf den Anfang der Datei. Die Datei wird für Lese- und Schreibzugriffe geöffnet. Existiert die Datei bereits, so liefert _dos_creatnew einen Fehler zurück und die Datei bleibt unverändert.

Der Parameter attrib enthält eine ODER-Kombination aus einer oder mehreren der folgenden in dos.h definierten Konstanten:

_A_NORMAL Normale Datei
_A_RDONLY Nur-Lesen-Datei
_A_HIDDEN Verborgene Datei
_A_SYSTEM Systemdatei

Rückgabewert :
Wenn die angegebene Datei fehlerfrei geöffnet werden konnte, liefert _dos_creatnew 0 zurück. Andernfalls wird der Fehlercode des Betriebssystems zurückgeliefert und die globale Variable errno wird auf einen der folgenden Werte gesetzt:

EACCES Zugriff nicht erlaubt
EEXIST Datei existiert bereits
ENOENT Pfad/Datei nicht gefunden
EMFILE Zu viele Dateien bereits offen



_dos_findfirst

Prototyp : unsigned _dos_findfirst(const char *pathname, int attrib, struct find_t *ffblk);
Header : <dos.h>

Beschreibung :
_dos_findfirst startet die Suche nach einer Datei in einem Verzeichnis.

Der Parameter pathname ist ein String und bezeichnet den zu suchenden Eintrag. Er kann optional eine Laufwerksbezeichnung und/oder einen Pfad enthalten, Jokerzeichen (* und ?) sind erlaubt. Falls eine Datei gefunden wird, werden in der über ffblk angegebenen Struktur find_t die im Verzeichnis enthaltenen Dateiinformationen gespeichert. Der Parameter attrib enthält das Datei-Attributwort des Betriebssystems und wird dazu verwendet, bestimmte Dateien bei der Suche auszuwählen. attrib enthält eine ODER-Kombination aus einer oder mehreren der folgenden in dos.h definierten Konstanten:

_A_NORMAL Normale Datei
_A_RDONLY Nur-Lesen-Attribut
_A_HIDDEN Verborgene Datei
_A_SYSTEM Systemdatei
_A_VOLID  Name des Datenträgers
_A_SUBDIR Verzeichnis
_A_ARCH   Archiv-Bit

Ausführliche Informationen über diese Attribute finden Sie in den Handbüchern Ihres Betriebssystems. Beachten Sie, daß wr_time und wr_date Bitfelder für den Zeit- bzw. Datumseintrag der Datei enthalten. Die Struktur dieser Bitfelder ist durch das Betriebssystem vorgegeben.

Rückgabewert :
_dos_findfirst liefert den Wert 0 zurück, wenn ein zu pathname passender Eintrag gefunden wurde. Wenn kein Eintrag gefunden wird oder der angegebene Dateiname aus irgendeinem Grund ungültig ist, wird der Fehlercode des Betriebssystems als Ergebnis geliefert und errno erhält den Wert:

ENOENT Pfad/Datei nicht gefunden



_dos_findnext

Prototyp : unsigned _dos_findnext(struct find_t *ffblk);
Header : <dos.h>

Beschreibung :
Mit _dos_findnext kann ein Verzeichnis nach weiteren Einträgen abgesucht werden, die zum Parameter pathname einer vorangegangenen  _dosfindfirst.-Suche passen. ffblk zeigt auf die gleiche Struktur wie bei _dos_findfirst und enthält die notwendigen Informationen zur Fortsetzung der Suche. _dos_findnext liefert bei jedem Aufruf einen weiteren Dateieintrag zurück - solange, bis das Verzeichnis keine weiteren Einträge mehr enthält, die dem Parameter pathname von _dos_findfirst entsprechen.

Rückgabewert :
_dos_findnext liefert den Wert 0 zurück, wenn ein weiterer, zu pathname passender Eintrag gefunden wurde. Sind keine weiteren Einträge vorhanden, oder ist der angegebene Dateiname aus irgendeinem Grund ungültig, so wird der Fehlercode des Betriebssystems zurückgeliefert und errno erhält den Wert:

ENOENT Datei/Pfad nicht gefunden



_dos_freemem

Prototyp : unsigned _dos_freemem(unsigned segx);
Header : <dos.h>

Beschreibung :
_dos_freemem gibt einen zuvor mit _dos_allocmem belegten Speicherblock wieder frei. Die Segmentadresse des Blocks wird über den Parameter segx angegeben.

Rückgabewert :
_dos_freemem gibt bei fehlerfreier Ausführung den Wert 0 zurück. Im Fall eines Fehlers gibt _dos_freemem den DOS-Fehlercode zurück und setzt errno auf folgenden Wert:

ENOMEM   Nicht genügend freier Arbeitsspeicher



_dos_getdate

Prototyp : void _dos_getdate(struct dosdate_t *datep);
Header : <dos.h>

Beschreibung :
 _dos_getdate füllt durch datep angegebene dosdate_t-Struktur mit dem aktuellen Systemdatum.

Rückgabewert :
Keiner.



_dos_getdiskfree

Prototyp : unsigned _dos_getdiskfree(unsigned char drive, struct diskfree_t *dtable);
Header : <dos.h>

Beschreibung :
_dos_getdiskfree ermittelt Informationen über den freien Platz auf dem durch drive angegebenen Laufwerk und speichert sie in der durch dtable bezeichneten Struktur des Typs diskfree_t. Wenn drive den Wert 0 hat, wird das aktuelle Laufwerk angesprochen, ansonsten gilt A = 1, B = 2 usw.

Rückgabewert :
_dos_getdiskfree liefert bei fehlerfreier Ausführung 0 zurück. Andernfalls wird ein Wert ungleich Null zurückgeliefert und errno erhält den Wert:

EINVAL   Ungültiges Laufwerk



_dos_getdrive

Prototyp : void _dos_getdrive(unsigned *drivep);
Header : <dos.h>

Beschreibung :
_dos_getdrive ermittelt die aktuelle Laufwerksnummer. Für die Laufwerksnummern in der durch drivep angegebenen Adresse gilt: 1 = A, 2 = B, 3 = C, usw.

Rückgabewert :
Keiner. Mit _dos_getdrive können Sie feststellen, ob das aktuelle Laufwerk erfolgreich geändert wurde.



_dos_getfileattr

Prototyp : int _dos_getfileattr(const char *path, unsigned *attribp);
Header : <dos.h>

Beschreibung :
_dos_getfileattr liest die Dateiattribute der durch path angegebenen Datei. Die Attribute werden an der durch attribp angegebenen Adresse gespeichert. Die Dateiattribute bestehen aus einer ODER-Kombination der folgenden in dos.h definierten symbolischen Konstanten:

_A_NORMAL Normale Datei (keine Attribut-Bits gesetzt)
_A_RDONLY Nur-Lesen-Attribut
_A_HIDDEN Verborgene Datei
_A_SYSTEM Systemdatei
_A_VOLID  Datenträgername
_A_SUBDIR Verzeichnis
_A_ARCH   Archiv-Bit

Rückgabewert :
Bei fehlerfreier Ausführung liefert _dos_getfileattr als Ergebnis 0. Andernfalls wird der Fehlercode des Betriebssystems zurückgeliefert und die globale Variable errno erhält den Wert:

ENOENT   Pfad/Datei nicht gefunden



_dos_getftime

Prototyp : unsigned _dos_getftime(int handle, unsigned *datep, unsigned *timep);
Header : <dos.h>

Beschreibung :
_dos_getftime liest die Uhrzeit und das Datum der durch handle angegebenen Datei. Diese Datei muß vorher mit _dos_open , _dos_creat oder _dos_creatnew geöffnet worden sein. _dos_getftime speichert das Datum und die Zeit an den durch datep und timep angegebenen Adressen. Beachten Sie, daß die Datums- und Uhrzeitwerte Bitfelder für die Uhrzeit und das Datum der Datei enthalten. Die Struktur dieser Bitfelder ist durch das Betriebssystem vorgegeben.

Rückgabewert :
_dos_getftime liefert bei fehlerfreier Ausführung 0 zurück. Im Fehlerfall wird der Fehlercode des Betriebssystems zurückgeliefert und die globale Variable errno erhält einen der folgenden Werte:

EACCES Zugriff verweigert
EBADF  Ungültiges Handle



_dos_gettime

Prototyp : void _dos_gettime(struct dostime_t *timep);
Header : <dos.h>

Beschreibung :
_dos_gettime speichert die aktuelle Systemzeit in der über timep angegebenen Struktur des Typs dostime_t.

Rückgabewert :
Keiner.



_dos_open

Prototyp : unsigned _dos_open(const char *filename, unsigned oflags, int *handlep);
Header : <dos.h>

Beschreibung :
_dos_open öffnet die durch filename angegebene Datei entsprechend des Parameters oflags für Lese- und/oder Schreibzugriffe. Die Datei wird stets im Binärmodus geöffnet. _dos_open speichert das Datei-Handle an der von handlep angegebenen Adresse.

oflags verwendet die Flags der folgenden beiden Listen. Aus der ersten Liste darf (und muß) genau ein Flag verwendet werden. Die übrigen Flags können in jeder logischen Kombination benutzt werden.

Lese-/Schreib Flags :
O_RDONLY Nur Lesen
O_WRONLY Nur Schreiben
O_RDWR   Lesen und Schreiben

Die folgenden zusätzlichen Werte können mit einer ODER-Operation in oflags aufgenommen werden:
 
O_NOINHERIT  Datei wird nicht an Kindprozesse vererbt.
SH_COMPAT  Ermöglicht weitere Zugriffe auf diese Datei mit SH_COMPAT. Wurde die Datei bereits in einem gemeinsamen Zugriffsmodus geöffnet, ergibt der Aufruf einen Fehler.
SH_DENYRW  Ermöglicht den Zugriff auf die Datei nur über das aktuelle Handle.
SH_DENYWR  Über andere Handles kann diese Datei nur gelesen, aber nicht beschrieben werden..
SH_DENYRD  Über andere Handles kann diese Datei nur beschrieben werden.
SH_DENYNO  Sämtliche Zugriffe auf diese Datei sind erlaubt, jedoch nicht solche mit SH_COMPAT.
 
Diese symbolischen Konstanten sind in fcntl.h und share.h. definiert.

Rückgabewert :
_dos_open liefert bei fehlerfreier Ausführung 0 zurück und speichert das Datei-Handle an der durch handlep angegebenen Adresse. Der Dateizeiger - er markiert die aktuelle Position in der Datei - wird auf den Dateianfang gesetzt. Im Fehlerfall liefert _dos_open den DOS-Fehlercode zurück. Die globale Variable errno wird auf einen der folgenden Werte gesetzt:

EACCES  Zugriff nicht gestattet
EINVACC Ungültiger Zugriffscode
EMFILE  Zu viele Dateien offen
ENOENT  Pfad oder Datei nicht gefunden



_dos_read

Prototyp : unsigned _dos_read(int handle, void *buf, unsigned len, unsigned *nread);
Header : <io.h>

Beschreibung :
_dos_read liest len Bytes aus der mit handle bezeichneten Datei in den durch den Zeiger buf angegebenen Speicherbereich. Die Anzahl der gelesenen Bytes wird an der Adresse gespeichert, auf die nread zeigt. Im Fehlerfall oder beim Erreichen des Dateiendes kann diese Zahl kleiner als len sein. Die Funktion _dos_read entfernt keine Wagenrücklaufzeichen (CR), da sie ausschließlich mit binären Dateien arbeitet. Nach der Beendigung des Lesevorgangs wird der Dateizeiger um die Anzahl der gelesenen Bytes erhöht. Bei Gerätedateien ist eine Position nicht definiert - hier liest _dos_read direkt vom entsprechenden Gerät.

Rückgabewert :
Bei fehlerfreier Ausführung liefert _dos_read den Wert 0 zurück. Andernfalls liefert die Funktion den DOS-Fehlercode zurück und setzt errno auf EACCES (Zugriff verweigert) oder EBADF (ungültiges Handle).



_dos_setblock

Prototyp : unsigned _dos_setblock(unsigned newsize, unsigned segx, unsigned *maxp);
Header : <dos.h>

Beschreibung :
_dos_setblock verändert die Größe eines zuvor mit _dos_allocmem belegten Speichersegments. Die Startadresse des Blocks wird über den Parameter segx angegeben, newsize gibt die neue Größe in Paragraphen an. Kann der Speicherblock nicht auf die angegebene Größe geändert werden, speichert _dos_setblock den Umfang des größtmöglichen Bereichs an der durch maxp angegebenen Adresse.

Rückgabewert :
_dos_setblock hat bei fehlerfreier Ausführung den Rückgabewert 0. Im Falle eines Fehlers wird der DOS-Fehlercode zurückgegeben und die globale Variable errno wird auf folgenden Wert gesetzt:

ENOMEM    Nicht genügend Arbeitsspeicher oder falsche Segmentadresse



_dos_setdate

Prototyp : unsigned _dos_setdate(struct dosdate_t *datep);
Header : <dos.h>

Beschreibung :
_dos_setdate setzt das Systemdatum (Monat, Tag und Jahr) auf die durch datep angegebenen Einträge einer dosdate_t-Struktur.

Rückgabewert :
_dos_setdate liefert 0 zurück, wenn das Datum erfolgreich gesetzt werden konnte. Andernfalls wird ein Wert ungleich Null zurückgeliefert und die globale Variable errno erhält den Wert:

EINVAL   Ungültiges Datum



_dos_setdrive

Prototyp : void _dos_setdrive(unsigned drivep, unsigned *ndrives);
Header : <dos.h>

Beschreibung :
_dos_setdrive setzt die aktuelle Laufwerksnummer und speichert die Gesamtzahl der Laufwerke an der Adresse, auf die ndrives zeigt. Für die Laufwerksnummern in der durch drivep angegebenen Adresse gilt: 1 = A, 2 = B, 3 = C, usw.

Rückgabewert :
Keiner.



_dos_setfileattr

Prototyp : int _dos_setfileattr(const char *path, unsigned attrib);
Header : <dos.h>

Beschreibung :
_dos_setfileattr setzt die Zugriffsberechtigung der durch path angegebenen Datei auf den Wert von attrib. Die Dateiattribute bestehen aus einer ODER-Kombination der folgenden in dos.h definierten symbolischen Konstanten:

_A_NORMAL Normale Datei (keine Attribut-Bits gesetzt)
_A_RDONLY Nur-Lesen-Attribut
_A_HIDDEN Verborgene Datei
_A_SYSTEM Systemdatei
_A_VOLID  Datenträgername
_A_SUBDIR Verzeichnis
_A_ARCH   Archiv-Bit

Rückgabewert :
Bei fehlerfreier Ausführung liefert _dos_setfileattr als Ergebnis 0. Andernfalls wird der Fehlercode des Betriebssystems zurückgeliefert und die globale Variable errno erhält den Wert:

ENOENT Pfad/Datei nicht gefunden



_dos_setftime

Prototyp : unsigned _dos_setftime(int handle, unsigned date, unsigned time);
Header : <dos.h>

Beschreibung :
_dos_setftime setzt Datum und Uhrzeit der Datei auf die neuen, in den Parametern time und date angegebenen Werte. Beachten Sie, daß die Datums- und Uhrzeitwerte Bitfelder für die Uhrzeit und das Datum der Datei enthalten. Die Bitfelder sind bei _dos_getftime beschrieben.

Rückgabewert :
_dos_setftime liefert bei fehlerfreier Ausführung 0 zurück. Im Fehlerfall wird der Fehlercode des Betriebssystems zurückgeliefert und die globale Variable errno erhält einen der folgenden Werte:

EACCES Zugriff verweigert
EBADF  ungültiges Handle



_dos_settime

Prototyp : unsigned _dos_settime(struct dostime_t *timep);
Header : <dos.h>

Beschreibung :
_dos_settime setzt die Systemzeit auf die Werte in der Struktur des Typs dostime_t, auf die timep zeigt.

Rückgabewert :
Bei fehlerfreier Ausführung liefert _dos_settime als Ergebnis 0. Andernfalls wird der Fehlercode des Betriebssystems zurückgeliefert und die globale Variable errno erhält den Wert:

EINVAL Ungültige Uhrzeit



_dos_write

Prototyp : unsigned _dos_write(int handle, const void *buf, unsigned len, unsigned *nwritten);
Header : <dos.h>

Beschreibung :
_dos_write liest mit Hilfe der DOS-Funktion 0x40 len Bytes aus dem Puffer, auf den der Zeiger buf zeigt, und schreibt sie in die durch handle bezeichnete Datei. Da die Funktion _dos_write nur mit binären Dateien arbeitet, übersetzt sie Zeilenvorschubzeichen (LF) nicht in CR/LF (Wagenrücklauf/Zeilenvorschub). _dos_write speichert die Anzahl der geschriebenen Bytes an der durch nwritten bezeichneten Adresse. Werden weniger als len Bytes geschrieben, sollte dies als Fehler interpretiert werden und deutet normalerweise auf eine volle Diskette/Festplatte hin. Bei Dateien auf Diskette/Festplatte schreibt _dos_write ab der aktuellen Positionen des Dateizeigers, bei Gerätedateien werden die Bytes direkt an das jeweilige Gerät gesendet.

Rückgabewert :
_dos_write liefert bei fehlerfreier Ausführung das Ergebnis 0. Andernfalls wird der Fehlercode des Betriebssystems zurückgeliefert und die globale Variable errno erhält den einen der folgenden Werte:

EACCES Zugriff nicht erlaubt
EBADF  Ungültiges Handle



_strtold

Prototyp : long double _strtold(const char *s, char **endptr);
Header : <stdlib.h>

Beschreibung :
_strtold konvertiert den durch s angegebenen String in einen long double-Wert. Der Inhalt des Strings muß daher als long double interpretierbar sein und das folgende Format haben:

_strtold erkennt ausserdem +INF und -INF für plus bzw. minus unendlich sowie +NAN und -NAN für Not-A-Number (keine darstellbare Zahl). Beispiele für gültige Angaben sind:

+ 435.2341 e-1
112.12E2
+ 9102.21

_strtold bricht die Analyse beim ersten Zeichen ab, das nicht mehr als Teil eines long double-Werts interpretiert werden kann. Solange der Parameter endptr nicht NULL ist, wird *endptr von _strtold auf das Zeichen innerhalb von s gesetzt, durch das die Analyse abgebrochen wurde (*endptr = &abbruch_zeichen). endptr ist für die Fehlersuche nützlich.

Rückgabewert :
Diese Funktion liefert das Ergebnis der Konvertierung von s als long double zurück. Im Falle eines Überlaufs wird plus oder minus LHUGE_VAL zurückgeliefert.



abort

Prototyp : void abort(void);
Header : <stdlib.h>

Beschreibung :
abort bewirkt einen sofortigen Programmabbruch mit dem Exit-Code 3.

Rückgabewert :
Gibt den Exit-Code 3 an den übergeordneten Prozeß oder an den Kommandozeileninterpreter des Betriebssystems zurück.



abs

Prototyp : int abs(int x);
Header : <math.h>

Beschreibung :
abs liefert den absoluten Betrag seines Integer-Arguments x.

Rückgabewert :
Die Funktion abs liefert einen Wert im Bereich von 0 bis INT_MAX. Ausnahme: Der Wert INT_MIN wird als INT_MIN zurückgegeben. Die Werte für INT_MAX und INT_MIN sind in der Header-Datei limits.h. definiert.



access

Prototyp : int access(const char *filename, int amode);
Header : <io.h>

Beschreibung :
access prüft, ob eine Datei des (als filename) angegebenen Namens existiert. Wenn ja, folgt eine Prüfung, ob der in amode angegebene Zugriff möglich ist. Die folgenden Werte sind für amode definiert:0

00 Prüfung auf "Datei existiert"
01 Prüfung auf "Ausführung erlaubt"
02 Prüfung auf "Schreiben erlaubt"
04 Prüfung auf "Lesen erlaubt"
06 Prüfung auf "Lesen und Schreiben erlaubt"

Unter MS-DOS besitzen alle existierenden Dateien automatisch Lesezugriff (amode 04), so daß die Werte 00 und 04 für amode dasselbe Ergebnis erzeugen. Eine Schreiberlaubnis impliziert bei MS-DOS daher auch die Erlaubnis zum Lesen; folglich sind die Werte 02 und 06 für amode ebenfalls äquivalent. Wenn filename ein Verzeichnis enthält, prüft access nur das Vorhandensein dieses Verzeichnisses.

Rückgabewert :
Ist der durch amode angegebene Zugriff erlaubt, so liefert access den Wert 0 zurück. Ansonsten ist der Rückgabewert -1 und die globale Variable errno wird auf einen der folgenden Werte gesetzt:

ENOENT Pfad oder Datei nicht vorhanden
EACCES Datei vorhanden, aber Zugriff nicht erlaubt



acos

Prototyp : double acos(double x);
Header : <math.h>

Beschreibung :
acos liefert den Arcuscosinus des Eingabewerts. Die Argumente zu acos müssen sich im Bereich von -1 bis 1 befinden. Andernfalls wird der Wert NAN zurückgeliefert und die globale Variable errno wird auf

EDOM Argument ausserhalb des zulässigen Bereichs gesetzt.

Rückgabewert :
Bei einem Argument zwischen -1 und +1 liefert acos Werte im Bereich von 0 bis pi zurück.



asctime

Prototyp : char * asctime( struct tm * ti );
Header : <time.h>

Beschreibung :
Die Funktion asctime konvertiert Datum und Uhrzeit aus der tm-Struktur in einen ASCII-String mit einer Länge von 26 Zeichen :

   Tue Apr 14 15:45:31 1998\n\0

Rückgabewert :
asctime liefert einen Zeiger auf den String zurück, der das Datum und die Uhrzeit enthält. Dieser String ist eine statische Variable, die bei jedem Aufruf von asctime überschrieben wird.



asin

Prototyp : double asin(double x);
Header : <math.h>

Beschreibung :
asin liefert für ein reelles Argument den Arcussinus des eingegebenen Werts zurück. asin erwartet ein reelles Argument im Bereich von -1 bis +1. Reelle Argumente ausserhalb dieses Bereichs liefern NAN und setzen errno auf den Wert

EDOM Argument außerhalb des zulässigen Bereichs.

Rückgabewert :
Der Rückgabewert von asin liegt für reelle Argumente im Bereich von -pi/2 bis pi/2.



assert

Prototyp : void assert(int test);
Header : <assert.h>

Beschreibung :
assert ist ein Makro, das bei der Compilierung zu einer if-Anweisung erweitert wird. Wenn test zur Laufzeit des Programms den Wert Null (d.h. false) ergibt, wird die Meldung

auf stderr ausgegeben. Danach erfolgt der Abbruch des Programms mit abort. In dieser Meldung bezeichnet file den Namen der Quelltextdatei und line die Nummer der Zeile, in der sich der Aufruf von assert befindet. Wenn das Symbol NDEBUG vor der Aufnahme von assert.h im Quelltext definiert ist (#define NDEBUG), werden sämtliche Aufrufe von assert durch den Präprozessor entfernt..

Rückgabewert :
Keiner.



atan

Prototyp : double atan(double x);
Header : <math.h>

Beschreibung :
atan berechnet den Arcustangens des übergebenen Arguments.

Rückgabewert :
atan liefert einen Wert im Bereich von -pi bis pi.



atan2

Prototyp : double atan2(double y, double x);
Header : <math.h>

Beschreibung :
atan2 liefert den Arcustangens von y/x und erzeugt auch dann noch korrekte Resultate, wenn sich der ergebende Winkel pi/2 oder -pi/2 nähert (den Polstellen der Tangensfunktion, für Werte von x nahe Null). Wenn die beiden Argumente x und y gleich Null sind, setzt diese Funktion errno auf den Wert EDOM und zeigt so einen ungültigen Eingabewert an.

Rückgabewert :
atan2 liefert einen Wert im Bereich von -pi bis pi.



atexit

Prototyp : int atexit(void (* func)(void));
Header : <stdlib.h>

Beschreibung :
atexit registriert die Funktion, auf die func zeigt, als sogenannte Exit-Funktion: bei normalem Programmende ruft exit die Funktion (*func)( ) unmittelbar vor der Rückkehr zum Betriebssystem auf. Durch jeden Aufruf von atexit wird eine weitere Funktion registriert. Bis zu 32 Funktionen können so registriert werden, die bei Programmende nach dem Prinzip "last in - first out" ausgeführt werden; die als letzte mit atexit festgelegte Funktion wird also zuerst ausgeführt.

Rückgabewert :
atexit liefert den Wert 0 zurück, wenn die angegebene Funktion aufgenommen werden konnte; falls bereits 32 Funktionen registriert sind (und damit kein weiterer Platz mehr zur Verfügung steht), ist das Ergebnis ungleich Null.



atof

Prototyp : double atof(const char *s);
Header : <stdlib.h> / <math.h>

Beschreibung :
atof konvertiert den durch s bezeichneten String in eine Gleitkommazahl und liefert das Ergebnis als double zurück. Der String muß dem folgenden Format entsprechen:

atof erkennt zusätzlich +INF und -INF als positive bzw. negative Unendlichkeit sowie +NAN und -NAN (für "Not a Number" - ein nicht numerisch darstellbarer Wert). Die Konvertierung bricht beim ersten nicht-interpretierbaren Zeichen ab. strtod arbeitet ähnlich wie atof, erlaubt aber eine bessere Fehlerbehandlung und wird daher in manchen Fällen bevorzugt.

Rückgabewert :
atof liefert den konvertierten Wert des Eingabestrings zurück. Im Fall eines Überlaufs liefert atof den Wert +HUGE_VAL oder -HUGE_VAL zurück und errno wird auf ERANGE gesetzt.



atoi

Prototyp : int atoi(const char *s);
Header : <stdlib.h>

Beschreibung :
atoi konvertiert den durch s bezeichneten String in einen int-Wert. Der String muß folgendem Format entsprechen:

Die Konvertierung endet beim ersten nicht-interpretierbaren Zeichen, eine Prüfung auf eventuelle Überläufe findet nicht statt (die Funktionsergebnisse sind dann undefiniert)

Rückgabewert :
atoi liefert das Ergebnis der Konvertierung oder 0, wenn der zu interpretierende String nicht zu einem Integerwert konvertierbar ist.



atol

Prototyp : long atol(const char *s);
Header : <stdlib.h>

Beschreibung :
atol konvertiert den durch s bezeichneten String in einen long-Wert. Der String muß folgendem Format entsprechen:

Die Konvertierung endet beim ersten nicht-interpretierbaren Zeichen. Eine Prüfung auf eventuelle Überläufe findet nicht statt (die Funktionsergebnisse sind dann undefiniert).

Rückgabewert :
atol liefert das Ergebnis der Konvertierung zurück. Wenn der zu interpretierende String nicht zu einem long-Wert konvertiert werden kann, liefert atol 0 zurück.



atot

Prototyp : FIXP atot( const char *s );
Header : <stdlib.h> / <fmath.h>

Beschreibung :
atot wandelt den durch s bezeichneten String in eine reelle Zahl und liefert das Ergebnis als Festkomma-Wert. Der String muß dem folgenden Format entsprechen :

Der FIXP-Typ entspricht einem long integer.  Das obere Wort (16Bit)  steht dabei für den Vorkomma- und das untere Word für den Nachkommateil.

Rückgabewert :
atot liefert den konvertierten Wert als 32Bit-Festkomma-Wert zurück. Konnte der String nicht konvertiert werden, liefert atot den Wert 0 zurück.



atoul

Prototyp : unsigned long atoul(const char *s);
Header : <stdlib.h>

Beschreibung :
atoul konvertiert den durch s bezeichneten String in einen vorzeichenlosen long-Wert. Der String muß folgendem Format entsprechen:

Die Konvertierung endet beim ersten nicht-interpretierbaren Zeichen. Eine Prüfung auf eventuelle Überläufe findet nicht statt (die Funktionsergebnisse sind dann undefiniert).

Rückgabewert :
atoul liefert das Ergebnis der Konvertierung zurück. Wenn der zu interpretierende String nicht zu einem unsigned long-Wert konvertiert werden kann, liefert atoul 0 zurück.



calloc

Prototyp : void *calloc(size_t nitems, size_t size);
Header : <stdlib.h>

Beschreibung :
calloc belegt einen Speicherbereich von nitems * size Bytes, die mit 0 initialisiert werden.

Rückgabewert :
calloc liefert einen Zeiger auf den neu reservierten Speicherbereich. Wenn kein Speicherbereich ausreichender Größe zur Verfügung steht, oder wenn nitems oder size den Wert 0 haben, liefert calloc NULL zurück.



ceil

Prototyp : double ceil(double x);
Header : <math.h>

Beschreibung :
ceil ermittelt den kleinsten Integerwert grösser oder gleich x.

Rückgabewert :
Die Funktion ceil liefert ihr ganzzahliges Ergebnis als Wert vom Typ double zurück.



ceill

Prototyp : long double ceill(long double x);
Header : <math.h>

Beschreibung :
ceill ermittelt den kleinsten Integerwert grösser oder gleich x.

Rückgabewert :
Die Funktion ceill liefert ihr ganzzahliges Ergebnis als Wert vom Typ long double zurück.



close

Prototyp : int close(int handle);
Header : <io.h>

Beschreibung :
close schließt die durch handle bezeichnete Datei. Ein Handle wird durch einen Aufruf von creat, creatnew oder open erzeugt. Diese Funktion schreibt kein ^Z ([Ctrl-Z]) als Dateiende-Zeichen. Falls Sie eine Datei mit ^Z abschließen wollen, müssen Sie dieses Zeichen explizit ausgeben.

Rückgabewert :
close liefert den Wert 0 zurück, wenn die Operation fehlerfrei ausgeführt werden konnte, ansonsten -1. handle muß ein gültiges Handle sein, dem eine gültige, offene Datei zugeordnet ist. Falls dies nicht der Fall ist, erhält die globale Variable errno den Wert:

EBADF Ungültiges Handle



cos

Prototyp : double cos(double x);
Header : <math.h>

Beschreibung :
cos erwartet einen Winkel in der Einheit rad als Argument und liefert den dazugehörigen Cosinus zurück.

Rückgabewert :
Für ein reelles Argument liefert cos Werte im Bereich von -1 bis +1 zurück.



cosh

Prototyp : double cosh(double x);
Header : <math.h>

Beschreibung :
cosh berechnet den Cosinus hyperbolicus (e x + e -x) / 2.

Rückgabewert :
Bei fehlerfreier Ausführung liefert cosh den Cosinus hyperbolicus des Arguments.



cosl

Prototyp : long double cosl(long double x);
Header : <math.h>

Beschreibung :
cosl erwartet einen Winkel in der Einheit rad als Argument und liefert den dazugehörigen Cosinus zurück.

Rückgabewert :
Für ein reelles Argument liefert cos Werte im Bereich von -1 bis +1 zurück.



creat

Prototyp : int creat(const char *path, int amode);
Header : <io.h>

Beschreibung :
creat erzeugt einen neue Datei oder leitet das Überschreiben einer existierenden Datei ein, die durch path bezeichnet wird. Der Parameter amode wird nur bei neu erzeugten Dateien ausgewertet. Mit creat erzeugte Dateien werden grundsätzlich in dem durch die globale Variable _fmode gesetzten Modus (O_TEXT oder O_BINARY) erzeugt. Existiert eine Datei des angegebenen Namens noch nicht, wird sie von creat angelegt. Wenn die Datei bereits existiert und das Schreiben-Attribut gesetzt ist, wird sie auf Nullänge verkürzt und die Dateiattribute bleiben unverändert. Falls bei der Datei das Nur-Lesen-Attribut gesetzt ist, bricht creat mit einem Fehler ab, die Datei bleibt unverändert.

Ein Aufruf von creat überprüft nur das S_IWRITE-Bit von amode. Ist dieses Bit 1, kann in die Datei geschrieben werden, ist das Bit 0, ist nur das Lesen erlaubt. Alle anderen Dateiattribute des Betriebssystems werden auf 0 gesetzt. Die folgenden Konstanten sind in sys\stat.h für amode definiert:
 
 
Wert von amode Zugriffsberechtigung 
S_IWRITE Schreiben erlaubt 
S_IREAD Lesen erlaubt 
S_IREAD|S_IWRITE  Lesen und Schreiben erlaubt 
 

Die Erlaubnis zum Schreiben beinhaltet automatisch die Erlaubnis zum Lesen.

Rückgabewert :
Wenn die angegebene Datei fehlerfrei geöffnet werden konnte, liefert creat das neue Datei-Handle (einen positiven Integerwert) zurück. Im Fehlerfall wird -1 geliefert und errno erhält einen der folgenden Werte:

EACCES Zugriff nicht erlaubt
ENOENT Pfad/Datei nicht gefunden
EMFILE Zu viele Dateien bereits offen



creatnew

Prototyp : int creatnew(const char *path, int mode);
Header : <io.h>

Beschreibung :
creatnew arbeitet wie creat - mit einer Ausnahme: wenn die angegebene Datei bereits existiert, wird mit einer Fehlermeldung abgebrochen; die Datei bleibt dabei unverändert.

Der Parameter mode kann gleich Null oder eine ODER-Kombination der folgenden Konstanten sein, die in dos.h definiert sind:

FA_HIDDEN Verborgene Datei
FA_RDONLY Nur-Lesen-Attribut
FA_SYSTEM Systemdatei

Rückgabewert :
Wenn die angegebene Datei fehlerfrei geöffnet werden konnte, liefert creatnew das neue Datei-Handle (einen positiven Integerwert) zurück. Im Fehlerfall wird -1 zurückgeliefert und die globale Variable errno erhält einen der folgenden Werte:

EACCES Zugriff nicht erlaubt
EEXIST Datei existiert bereits
EMFILE Zu viele Dateien bereits offen
ENOENT Pfad/Datei nicht gefunden



ctime

Prototyp : char * ctime( time_t *t );
Header : <time.h>

Beschreibung :
ctime konvertiert Datum und Uhrzeit aus einer time_t-Variable (ermittelt durch die Funktion time) in einen String mit einer Länge von 26 Zeichen :

   Tue Apr 14 15:45:19 1998\n\0

Rückgabewert :
ctime liefert einen Zeiger auf einen statischen String zurück, der Datum und Uhrzeit enthält und mit jedem Aufruf dieser Funktion überschrieben wird.



difftime

Prototyp : double difftime( time_t t1, time_t t2 );
Header : <time.h>

Beschreibung :
difftime berechnet die Differenz in Sekunden zwischen t1 und t2.

Rückgabewert :
Der Rückgabewert ist die Differenz als double-Wert.



div

Prototyp : div_t div(int numer, int denom);
Header : <stdlib.h>

Beschreibung :
div dividiert die als numer (Dividend) und denom (Divisor) übergebenen Integerwerte und liefert Quotienten und Divisionsrest in einer Struktur des Typs div_t zurück.

Rückgabewert :
div liefert eine Struktur mit den Elementen quot (Quotient) und rem (Divisionsrest) zurück.



dup

Prototyp : int dup(int handle);
Header : <io.h>

Beschreibung :
dup erzeugt aus einem Datei-Handle ein zweites Handle, das mit dem Original folgende Gemeinsamkeiten hat:

handle ist ein Datei-Handle, das man durch einen Aufruf von creat, creatnew, open, dup oder dup2 erhalten hat.

Rückgabewert :
dup liefert bei fehlerfreier Ausführung das neu erzeugte Datei-Handle als positiven Integerwert zurück. Im Fehlerfall liefert die Routine den Wert -1 und die globale Variable errno wird auf einen der folgenden Werte gesetzt:

EMFILE Zu viele offene Dateien
EBADF  Ungültiges Handle


 <Zurück zur Übersicht> | <Nächste Seite>