Prototyp : int dup2(int oldhandle, int newhandle);
Header : <io.h>
Beschreibung :
dup2 erzeugt aus einem Handle ein zweites, das mit dem Original folgende
Gemeinsamkeiten hat:
Rückgabewert :
dup2 liefert bei fehlerfreier Ausführung den Wert 0 zurück.
Im Fehlerfall liefert die Routine den Wert -1 und die globale Variable
errno wird auf einen der folgenden Werte gesetzt:
EBADF Ungültiges Handle
EMFILE Zu viele offene Dateien
Prototyp : char *ecvt(double value, int ndig, int *dec, int *sign);
Header : <stdlib.h>
Beschreibung :
ecvt konvertiert value in einen nullterminierten String mit
ndig Ziffern, der mit der höchstwertigen Ziffer (links) beginnt.
ecvt liefert einen Zeiger auf diesen String zurück. Über dec
wird die Position des Dezimalpunkts relativ zum Beginn des Strings zurückgeliefert
(negative Werte bedeuten hier: "Dezimalpunkt befindet sich links vom Stringanfang").
Der String selbst enthält keinen Dezimalpunkt. Wenn value negativ
ist, dann setzt ecvt das über sign adressierte Wort auf einen
Wert ungleich Null (für positive Werte von value ist *sign
== 0). Die letzte Ziffer des zurückgelieferten Strings ist gerundet.
Rückgabewert :
ecvt liefert einen Zeiger auf diesen statischen String zurück,
dessen Inhalt durch jeden Aufruf von fcvt und ecvt
überschrieben wird.
Prototyp : void exit(int status);
Header : <stdlib.h>
Beschreibung :
exit beendet das laufende Programm. Vor dem Rücksprung werden
sämtliche Dateipuffer geschrieben, offene Dateien geschlossen und
(mit atexit) festgelegte Exit-Funktionen
aufgerufen. Die Funktion beendet das Programm mit dem als status
angegebenen Exit-Code, der vom aufrufenden Prozess geprüft werden
kann. Der Wert Null steht normalerweise für eine fehlerfreie Ausführung,
Werte ungleich Null signalisieren Fehler.
Rückgabewert :
Keiner.
Prototyp : double exp(double x);
Header : <math.h>
Beschreibung :
Berechnet die Exponentialfunktion ex.
Rückgabewert :
exp liefert e^x zurück. Falls die Argumente zu nicht-berechenbaren
Resultaten führen, werden die folgenden Fehlerbedingungen erzeugt:
Bei einem Überlauf liefert exp HUGE_VAL. Die globale Variable errno
wird in diesen Fällen auf folgenden Wert gesetzt:
ERANGE Ergebnis ausserhalb des Rechenbereichs
Bei einem Unterlauf liefert exp 0.0 zurück, die globale Variable
errno wird nicht verändert.
Prototyp : long double expl(long double x);
Header : <math.h>
Beschreibung :
Berechnet die Exponentialfunktion e^x.
Rückgabewert :
expl liefert e^x zurück. Falls die Argumente zu nicht-berechenbaren
Resultaten führen, werden die folgenden Fehlerbedingungen erzeugt:
Bei einem Überlauf liefert expl LHUGE_VAL. Die globale Variable errno
wird in diesen Fällen auf folgenden Wert gesetzt:
ERANGE Ergebnis ausserhalb des Rechenbereichs
Bei einem Unterlauf liefert expl 0.0 zurück, die globale Variable
errno wird nicht verändert.
Prototyp : double fabs(double x);
Header : <math.h>
Beschreibung :
fabs berechnet den absoluten Betrag des double-Arguments x.
Rückgabewert :
fabs liefert den absoluten Betrag von x zurück.
Prototyp : long double fabsl(long double x);
Header : <math.h>
Beschreibung :
fabsl berechnet den absoluten Betrag des long double-Arguments x.
Rückgabewert :
fabsl liefert den absoluten Betrag von x zurück.
Prototyp : FIXP fadd(FIXP a, FIXP b);
Header : <fmath.h>
Beschreibung :
Das Makro fadd addiert die beiden Festkomma-Werte a und b.
Rückgabewert :
Das Ergebnis der Addition wird als Festkomma-Wert zurückgegeben.
Prototyp : int fclose(FILE *stream);
Header : <stdio.h>
Beschreibung :
fclose schließt den durch stream angegebenen Stream, wobei
alle zum Stream gehörenden Puffer zuvor auf Diskette bzw. Platte geschrieben
werden. Durch das System reservierte Puffer werden durch fclose freigegeben.
Puffer, die mit setbuf zugeordnet wurden,
werden nicht automatisch freigegeben.
Rückgabewert :
fclose liefert bei fehlerfreier Ausführung den Wert 0, im Fehlerfall
den Wert EOF zurück.
Prototyp : int fcloseall(void);
Header : <stdio.h>
Beschreibung :
fcloseall schließt sämtliche offenen Streams außer
stdin, stdout, stderr, stdprn und stdaux.
Rückgabewert :
fcloseall liefert bei fehlerfreier Ausführung die Anzahl der geschlossenen
Streams zurück, im Fehlerfall den Wert EOF.
Prototyp : char *fcvt(double value, int ndig, int *dec, int *sign);
Header : <stdlib.h>
Beschreibung :
fcvt konvertiert value in einen nullterminierten String mit
ndig Ziffern rechts des Dezimalpunkts, der mit der höchstwertigen
Ziffer (links) beginnt. fcvt liefert einen Zeiger auf diesen String zurück.
Über dec wird die Position des Dezimalpunkts relativ zum Beginn
des Strings zurückgeliefert (negative Werte bedeuten hier: "Dezimalpunkt
befindet sich links vom Stringanfang"). Der String selbst enthält
keinen Dezimalpunkt. Wenn value negativ ist, dann setzt fcvt das
über sign adressierte Wort auf einen Wert ungleich null (für
positive Werte von value ist *sign == 0). Die Ziffern werden auf
ndig Stellen hinter dem Dezimalpunkt gerundet.
Rückgabewert :
fcvt liefert einen Zeiger auf einen statischen String zurück,
dessen Inhalt durch jeden Aufruf dieser Funktion (oder von ecvt)
neu gesetzt wird.
Prototyp : FIXP fdiv(FIXP a, FIXP b);
Header : <fmath.h>
Beschreibung :
fdiv dividiert die als a und b übergebenen Festkomma-Werte.
Rückgabewert :
Das Ergnbis der Division wird als Festkomma-Wert zurückgegeben.
Prototyp : int feof(FILE *stream);
Header : <stdio.h>
Beschreibung :
Das Makro feof prüft das Dateiende-Flag des über stream
angegebenen Stream. Dieses Flag wird beim Erreichen des Dateiendes automatisch
gesetzt. Leseoperationen liefern dann solange dieses Flag, bis rewind
aufgerufen oder die Datei geschlossen wird.
Rückgabewert :
feof liefert einen Wert ungleich 0 zurück, wenn das Dateiende-Flag
des angegebenen Stream gesetzt ist, ansonsten ist der Rückgabewert
0.
Prototyp : int ferror(FILE *stream);
Header : <stdio.h>
Beschreibung :
ferror ist ein Makro, das den über stream angegebenen Stream
auf Schreib- und Lesefehler prüft. Das Fehler-Flag eines Stream bleibt
nach einem Fehler solange gesetzt, bis rewind
aufgerufen oder der Stream geschlossen wird.
Rückgabewert :
ferror liefert einen Wert ungleich null zurück, wenn das Fehler-Flag
des angegebenen stream gesetzt ist, sonst den Wert 0.
Prototyp : FIXP ffix(int val);
Header : <fmath.h>
Beschreibung :
ffix konvertiert den übergebenen Integer-Wert in einen Festkomma-Wert.
Rückgabewert :
Der konvertierte Festkomma-Wert.
Prototyp : int fflush(FILE *stream);
Header : <stdio.h>
Beschreibung :
fflush erzwingt bei gepufferten Ausgabe-Streams ein Schreiben eventueller
Pufferinhalte, sorgt also dafür, daß ausgegebene Daten in die
zugehörige Datei geschrieben werden. Der durch stream bezeichnete
Stream bleibt offen. Auf ungepufferte Streams hat fflush keine Auswirkung.
Rückgabewert :
Bei fehlerfreier Ausführung liefert fflush den Wert 0, im Fehlerfall
den Wert EOF zurück.
Prototyp : int fgetc(FILE *stream);
Header : <stdio.h>
Beschreibung :
fgetc liest das jeweils nächste Zeichen aus dem Eingabe-Stream
stream.
Rückgabewert :
fgetc konvertiert bei fehlerfreier Ausführung das gelesene Zeichen
in einen int-Wert ohne Vorzeichenerweiterung und liefert diesen zurück.
Bei Erreichen des Dateiendes oder im Fehlerfall wird der Wert EOF zurückgeliefert.
Prototyp : int fgetchar(void);
Header : <stdio.h>
Beschreibung :
fgetchar liest das jeweils nächste Zeichen aus stdin und liefert
es zurück. Es ist definiert als fgetc(stdin).
Rückgabewert :
fgetchar konvertiert bei fehlerfreier Ausführung das gelesene
Zeichen in einen int-Wert ohne Vorzeichenerweiterung und liefert diesen
zurück. Bei Erreichen des Dateiendes oder im Fehlerfall wird der Wert
EOF zurückgeliefert.
Prototyp : int fgetpos(FILE *stream, fpos_t *pos);
Header : <stdio.h>
Beschreibung :
fgetpos speichert die Position des zu stream gehörigen
Dateizeigers in *pos.
Rückgabewert :
fgetpos liefert bei fehlerfreier Ausführung 0 zurück. Im
Fehlerfall liefert fgetpos einen Wert ungleich Null und setzt die globale
Variable errno auf:
EBADF Ungültiges Handle
EINVAL Ungültiges Argument
Prototyp : char *fgets(char *s, int n, FILE *stream);
Header : <stdio.h>
Beschreibung :
fgets liest einen String aus stream in den durch s angegebenen
String und bricht ab, wenn entweder ein Zeilenvorschub (\n) gelesen wird
oder n-1 Zeichen gelesen wurden. Der Zeilenvorschub wird am Ende von s
gespeichert. Anschließend hängt fgets automatisch ein Nullzeichen
(\0) an, um das Ende des Strings zu markieren.
Rückgabewert :
fgets liefert bei fehlerfreier Ausführung den durch s bezeichneten
String zurück. Bei Erreichen des Dateiendes oder im Fehlerfall ist
der Rückgabewert NULL.
Prototyp : int fileno(FILE *stream);
Header : <stdio.h>
Beschreibung :
fileno ist ein Makro und liefert das Handle des über den Parameter
stream angegebenen Stream zurück.
Rückgabewert :
fileno liefert das zu stream gehörende Datei-Handle als
Integer zurück.
Prototyp : int fint(FIXP value);
Header : <fmath.h>
Beschreibung :
fint konvertiert den übergebenen Festkomma-Wert in einen Integer-Wert
durch Abschneiden der Nachkomma-Stellen.
Rückgabewert :
Der konvertierte Integer-Wert.
Prototyp : double floor(double x);
Header : <math.h>
Beschreibung :
floor rundet auf den größten ganzzahligen Wert ab, der nicht
grösser als x ist.
Rückgabewert :
floor liefert den ganzzahligen Wert als double-Typ zurück.
Prototyp : long double floorl(long double x);
Header : <math.h>
Beschreibung :
floorl rundet auf den grössten ganzzahligen Wert ab, der nicht
grösser als x ist.
Rückgabewert :
floorl liefert den ganzzahligen Wert als long double-Typ zurück.
Prototyp : int flushall(void);
Header : <stdio.h>
Beschreibung :
flushall löscht alle zu offenen Eingabe-Streams gehörigen
Puffer und schreibt alle zu offenen Ausgabe-Streams gehörigen Puffer
in ihre jeweiligen Dateien. Die auf flushall folgenden Leseoperationen
lesen aus ihren Eingabedateien neue Daten in die Puffer ein. flushall schließt
keine Streams.
Rückgabewert :
flushall liefert die Gesamtzahl der offenen Ein- und Ausgabe-Streams
als Integerwert zurück.
Prototyp : double fmod(double x, double y);
Header : <math.h>
Beschreibung :
fmod berechnet x Modulo y als Rest f, wobei x = ay +
f für einen Integer a und 0 <<= f << y gilt.
Rückgabewert :
fmod liefert den Rest f, wobei x = ay + f gilt (wie beschrieben). Wenn
y gleich 0 ist, liefert fmod den Wert 0 zurück.
Prototyp : long double fmodl(long double x, long double y);
Header : <math.h>
Beschreibung :
fmodl berechnet x Modulo y als Rest f, wobei x = ay +
f für einen Integer a und 0 <<= f << y gilt.
Rückgabewert :
fmodl liefert den Rest f, wobei x = ay + f gilt (wie beschrieben).
Wenn y gleich 0 ist, liefert fmodl den Wert 0 zurück.
Prototyp : FIXP fmul(FIXP a, FIXP b);
Header : <fmath.h>
Beschreibung :
fmul multipliziert die beiden Festkomma-Werte a und b
miteinander.
Rückgabewert :
Das Ergebnis der Multiplikation wird als Festkomma-Wert zurückgegeben.
Prototyp : FILE *fopen(const char *filename, const char *mode);
Header : <stdio.h>
Beschreibung :
fopen öffnet die durch filename bezeichnete Datei und ordnet
ihr einen Stream zu. Zurückgeliefert wird ein Zeiger auf diesen Stream,
über den dann weitere Operationen mit diesem Stream ausgeführt
werden können. Der Parameter mode kann einen der folgenden
Werte annehmen:
r | Öffnen ausschließlich zum Lesen |
w | Erzeugung einer Datei zum Schreiben. Falls die Datei bereits existiert, wird sie überschrieben. |
a | Öffnen zum Schreiben. Falls die Datei bereits existiert, werden zusätzliche Informationen an das aktuelle Dateiende angefügt, ansonsten wird sie automatisch erzeugt. |
r+ | Öffnen einer Datei zum Lesen und Schreiben. Die Datei muß bereits existieren. |
w+ | Erzeugung einer neuen Datei zum Lesen und Schreiben. Falls die Datei bereits existiert, wird sie überschrieben. |
a+ | Öffnen einer Datei zum Lesen und Anhängen neuer Daten durch Schreiboperationen. Falls die Datei bereits existiert, bleibt ihr alter Inhalt erhalten - falls nicht, wird sie automatisch erzeugt. |
Mit r+ und w+ erzeugte Dateien können sowohl gelesen als auch beschrieben werden - zwischen einem Wechsel von "Schreiben" nach "Lesen" muß allerdings ein Aufruf von fseek oder rewind stattfinden. Zwischen einem Wechsel von "Lesen" nach "Schreiben" müssen ebenfalls fseek oder rewind aufgerufen werden, es sei denn, die Leseoperation hat das Dateiende erreicht.
Rückgabewert :
fopen liefert bei fehlerfreier Ausführung einen Zeiger auf den
neu geöffneten Stream, im Falle eines Fehlers den Wert NULL zurück.
Prototyp : int fprintf(FILE *stream, const char *format[, argument,
...]);
Header : <stdio.h>
Beschreibung :
fprintf übernimmt eine Folge von Argumenten, wendet auf jedes
die im Formatstring (Parameter format) festgelegte Formatierungsanweisung
an und schreibt die formatierten Daten in einen Stream. Die Anzahl der
Formatierungsanweisungen und der Argumente muß übereinstimmen.
Weitere Details finden Sie bei printf.
Rückgabewert :
fprintf liefert bei fehlerfreier Ausführung die Anzahl der ausgegebenen
Bytes, im Fehlerfall den Wert EOF zurück.
Prototyp : int fputc(int c,FILE *stream);
Header : <stdio.h>
Beschreibung :
fputc schreibt das Zeichen c in den durch stream angegebenen
Stream.
Rückgabewert :
fputc liefert das übergebene Zeichen c, im Fehlerfall den
Wert EOF zurück.
Prototyp : int fputchar(int c);
Header : <stdio.h>
Beschreibung :
fputchar schreibt das Zeichen c in stdout und hat dieselbe Wirkung
wie fputc(c, stdout).
Rückgabewert :
fputchar liefert bei fehlerfreier Ausführung das übergebene
Zeichen c, im Fehlerfall den Wert EOF zurück.
Prototyp : int fputs(const char *s, FILE *stream);
Header : <stdio.h>
Beschreibung :
fputs schreibt den nullterminierten String s in den angegebenen
Ausgabe-Stream. Diese Funktion erzeugt keinen automatischen Zeilenvorschub
am Ende der Ausgabe und das abschließende Nullzeichen (\0) wird nicht
ausgegeben.
Rückgabewert :
Bei fehlerfreier Ausführung liefert fputs das zuletzt geschriebene
Zeichen (einen positiven Wert), im Falle eines Fehlers den Wert EOF zurück.
Prototyp : size_t fread(void *ptr, size_t size, size_t n, FILE
*stream);
Header : <stdio.h>
Beschreibung :
fread liest n Datenelemente, die jeweils die Größe
size Bytes haben, aus dem angegebenen Stream in den Speicherbereich,
auf den ptr zeigt. Es werden insgesamt (n * size) Bytes gelesen.
Rückgabewert :
fread liefert bei fehlerfreier Ausführung die Anzahl der gelesenen
Datenelemente (nicht Bytes) zurück. Im Falle eines Fehlers oder am
Dateiende wird die Anzahl von Elementen (möglicherweise 0) zurückgeliefert,
die noch fehlerfrei gelesen werden konnten.
Prototyp : void free(void *block);
Header : <stdlib.h>
Beschreibung :
free gibt einen zuvor mit calloc, malloc
oder realloc reservierten Speicherblock
wieder frei.
Rückgabewert :
Keiner.
Prototyp : double frexp(double x, int *exponent);
Header : <math.h>
Beschreibung :
frexp berechnet zu x die Mantisse m (ein double-Wert, dessen
absoluter Betrag grösser/gleich 0.5 und kleiner als 1.0 ist) und den
Integerwert n so, daß die Gleichung x = m * 2n gilt. Der Exponent
n wird in dem Integer, auf den der Parameter exponent zeigt, gespeichert.
Rückgabewert :
frexp liefert die Mantisse m zurück.
Prototyp : long double frexpl(long double x, int *exponent);
Header : <math.h>
Beschreibung :
frexpl berechnet zu x die Mantisse m (ein long double-Wert,
dessen absoluter Betrag grösser/gleich 0.5 und kleiner als 1.0 ist)
und den Integerwert n so, daß die Gleichung x = m * 2n gilt. Der
Exponent n wird in dem Integer, auf den der Parameter exponent zeigt,
gespeichert.
Rückgabewert :
frexpl liefert die Mantisse m zurück.
Prototyp : int fround(FIXP value);
Header : <fmath.h>
Beschreibung :
fint konvertiert den übergebenen Festkomma-Wert in einen Integer-Wert
durch Runden der Nachkomma-Stellen.
Rückgabewert :
Der konvertierte Integer-Wert.
Prototyp : int fscanf(FILE *stream,const char *format[,address,...]);
Header : <stdio.h>
Beschreibung :
fscanf liest eine Reihe von Eingabefeldern zeichenweise aus einem Stream.
Entsprechend den Formatierungsanweisungen, die fscanf im Formatstring format
übergeben wurden, wird jedes Feld gelesen, formatiert und an einer
Adresse gespeichert, die nach format übergeben wurde. Die Anzahl
der Formatierungsanweisungen, der übergebenen Adressen und der Eingabefelder
müssen übereinstimmen. fscanf kann das Lesen eines bestimmten
Eingabefeldes abbrechen, bevor das normale Feldende (ein Whitespace-Zeichen)
erreicht ist. fsanf kann auch aus verschiedenen Gründen den Lesevorgang
vollständig abbrechen. Die möglichen Ursachen hierfür werden
bei scanf erläutert. Bei der Funktion
scanf finden Sie auch eine ausführliche
Beschreibung der Formatierungsanweisungen.
Rückgabewert :
fscanf liefert die Anzahl der fehlerfrei gelesenen und gespeicherten
Felder zurück. Gelesene, aber nicht gespeicherte Felder werden nicht
mitgezählt. Der Versuch, über das Ende einer Datei hinauszulesen,
ergibt den Wert EOF. Wenn überhaupt keine Felder gespeichert wurden,
wird 0 zurückgeliefert.
Prototyp : int fseek(FILE *stream,long offset,int whence);
Header : <stdio.h>
Beschreibung :
fseek setzt den zu stream gehörenden Dateizeiger auf die
neue Position, die offset Bytes von der durch whence angegebenen
Dateiposition entfernt ist. Für Streams im Textmodus sollte offset
0 sein oder ein Wert, der von ftell geliefert wurde.
Die Art der Positionierung wird über drei in stdio.h definierte Konstanten
für whence festgelegt:
Konstante | whence | Dateiposition |
SEEK_SET | 0 | Relativ zum Dateianfang |
SEEK_CUR | 1 | Relativ zur aktuellen Position |
SEEK_END | 2 | Relativ zum Dateiende |
Rückgabewert :
fseek liefert bei fehlerfreier Ausführung den Wert 0 zurück,
ansonsten einen Wert ungleich Null. Es ist möglich, daß fseek
0 zurückliefert, obwohl bei der Ausführung der Funktion ein Fehler
aufgetreten ist. Dies liegt daran, daß der Zeiger letztendlich von
DOS gesetzt und das Ergebnis der Positionierung nicht überprüft
wird. fseek gibt nur für ungeöffnete Dateien oder Geräte
einen Fehlercode zurück. Im Fehlerfall wird die globale Variable errno
auf einen der folgenden Werte gesetzt:
EBADF Ungültiger Dateizeiger
EINVAL Ungültiges Argument
ESPIPE Suche auf diesem Gerät
nicht möglich
Prototyp : int fsetpos(FILE *stream,const fpos_t *pos);
Header : <stdio.h>
Beschreibung :
fsetpos setzt den Dateizeiger von stream auf eine neue Position.
Die neue Position ist der Wert, der durch einen vorherigen Aufruf von fgetpos
für diesen Stream ermittelt wurde. Das zum Stream gehörende Dateiende-Flag
wird gelöscht, zuvor mit ungetc zurückgestellte
Zeichen sind nach dieser Operation nicht mehr verfügbar. Die nächste
Operation nach einem Aufruf von fsetpos kann sowohl eine Lese- als auch
eine Schreiboperation sein.
Rückgabewert :
fsetpos liefert bei fehlerfreier Ausführung den Wert 0 zurück.
Im Fehlerfall wird ein Wert ungleich Null zurückgeliefert und die
globale Variable errno wird auf einen Wert
ungleich null gesetzt.
Prototyp : FIXP fsub(FIXP a, FIXP b);
Header : <fmath.h>
Beschreibung :
Das Makro fsub subtrahiert den Festkomma-Wert b von Wert a.
Rückgabewert :
Das Ergebnis der Subtraktion wird als Festkomma-Wert zurückgegeben.
Prototyp : long int ftell(FILE *stream);
Header : <stdio.h>
Beschreibung :
ftell liefert den aktuellen Dateizeiger von stream zurück.
Die Position wird relativ zum Dateianfang in Bytes gemessen (falls es sich
um eine Binärdatei handelt). Der von ftell zurückgelieferte Wert
kann für einen nachfolgenden Aufruf von fseek
verwendet werden.
Rückgabewert :
ftell liefert bei fehlerfreier Ausführung die aktuelle Position
des Dateizeigers zurück. Im Fehlerfall ist der Rückgabewert -1
und die globale Variable errno wird auf einen
der beiden folgenden Werte gesetzt:
EBADF Ungültiger Dateizeiger
EINVAL Suche auf diesem Gerät
nicht möglich
Prototyp : size_t fwrite(const void *ptr,size_t size,size_t n,FILE
*stream);
Header : <stdio.h>
Beschreibung :
fwrite fügt n Datenelemente der Größe size
Bytes an die durch stream gegebene Datei an. Die zu schreibenden
Daten beginnen bei der Adresse, auf die ptr zeigt. Es werden n
* size Bytes geschrieben. ptr kann auf beliebige Objekte
zeigen.
Rückgabewert :
fwrite liefert bei fehlerfreier Ausführung die Anzahl der geschriebenen
Datenelemente (nicht Bytes) zurück. Im Fehlerfall wird die Anzahl
der Datenelemente zurückgeliefert, die noch fehlerfrei geschrieben
werden konnten.
Prototyp : char *gcvt(double value, int ndec, char *buf);
Header : <stdlib.h>
Beschreibung :
gcvt konvertiert value in einen nullterminierten ASCII-String,
der in buf gespeichert wird. Die Funktion versucht, ndec
signifikante Ziffern im F-Format von FORTRAN zu erzeugen. Wenn dies nicht
möglich ist, liefert sie den Wert im E-Format von printf
(druckfertig formatiert). Abschließende Nullen werden möglicherweise
unterdrückt.
Rückgabewert :
gcvt liefert die Adresse des durch buf bezeichneten Strings
zurück.
Prototyp : int getc(FILE *stream);
Header : <stdio.h>
Beschreibung :
Das Makro getc liest das jeweils nächste Zeichen aus dem angegebenen
Eingabe-Stream und inkrementiert den zugehörigen Dateizeiger.
Rückgabewert :
getc liefert bei fehlerfreier Ausführung das gelesene Zeichen
als int ohne Vorzeichenerweiterung zurück. Am Dateiende oder im Fehlerfall
liefert die Funktion EOF zurück.
Prototyp : int getch(void);
Header : <conio.h>
Beschreibung :
getch liest ein einzelnes Zeichen von der Tastatur, ohne es auf dem
Bildschirm auszugeben.
Rückgabewert :
getch liefert das von der Tastatur gelesene Zeichen zurück.
Prototyp : int getchar(void);
Header : <stdio.h>
Beschreibung :
getchar ist ein Makro, das das jeweils nächste Zeichen aus dem
Eingabe-Stream stdin liest und zurückliefert. Es ist definiert als
getc(stdin).
Rückgabewert :
getchar liefert bei fehlerfreier Ausführung das gelesene Zeichen
als int-Wert ohne Vorzeichenerweiterung zurück. Am Dateiende oder
im Fehlerfall liefert die Funktion EOF zurück.
Prototyp : int getche(void);
Header : <conio.h>
Beschreibung :
getche liest ein einzelnes Zeichen von der Tastatur und gibt dieses
Zeichen auf dem Bildschirm in das aktuelle Textfenster aus. getche benutzt
hierzu BIOS-Routinen.
Rückgabewert :
getche liefert das von der Tastatur gelesene Zeichen zurück.
Prototyp : char *getenv(const char *name);
Header : <stdlib.h>
Beschreibung :
getenv liefert den Wert der durch den Parameter name angegebenen
Umgebungsvariable zurück. name muß in Großbuchstaben vorliegen
und darf das Gleichheitszeichen (=) nicht enthalten. Existiert die angegebene
Umgebungsvariable nicht, so liefert getenv einen NULL-Zeiger zurück.
Rückgabewert :
Bei fehlerfreier Ausführung liefert getenv den Wert zurück,
der der Variablen zugeordnet ist. Falls die angegebene Variable name nicht
existiert, so liefert getenv einen NULL-Zeiger zurück.
Prototyp : char *gets(char *s);
Header : <stdio.h>
Beschreibung :
gets liest einen String aus dem Standardeingabe-Stream stdin und speichert
ihn in der durch s angegebenen Stringvariablen. Die Eingabe wird
durch einen Zeilenvorschub beendet, der in s als Nullzeichen (\0)
gespeichert wird. Eingabestrings dürfen bestimmte Whitespace-Zeichen
(Leerzeichen, Tabs) enthalten. gets kehrt zurück, wenn ein Zeilenvorschub
gelesen wird. Der String bis zu diesem Zeilenvorschub wird in s
gespeichert.
Rückgabewert :
gets liefert bei fehlerfreier Ausführung die Stringvariable s
zurück. Im Fehlerfall oder wenn beim Lesen das Dateiende überschritten
wird, ist der Rückgabewert NULL.
Prototyp : struct tm * gmtime( time_t *t );
Header : <time.h>
Beschreibung :
gmtime rechnet Datum und Uhrzeit aus der time_t-Variable in die Greenwich
Mean Time (GMT) um.
Rückgabewert :
Der Rückgabewert ist ein Zeiger auf eine statische Struktur des
Typs tm, die Datum und Uhrzeit für
GMT enthält. Die Tageszeit wird in 24 Stunden gemessen, der Tag im
Monat von 1 bis 31, der Monat von 0 bis 11 und der Tag im Jahr von 0 bis
365. Der Wochentag beginnt mit Sonntag = 0 und zur Jahresangabe muß
1900 addiert werden. Das Flag tm_isdst gibt an, ob die Sommerzeitkonvertierung
durchgeführt wurde. Diese statische Struktur wird bei jedem Aufruf
von gmtime überschrieben.
Prototyp : int inp(unsigned portid);
Header : <conio.h>
Beschreibung :
inp liest ein einzelnes Byte von der durch portid angegebenen
Eingabeschnittstelle.
Rückgabewert :
inp liefert den gelesenen Wert zurück.
Prototyp : unsigned inpw(unsigned portid);
Header : <conio.h>
Beschreibung :
inpw liest ein 16-Bit-Wort von der durch portid angegebenen
Schnittstelle. inpw liest das niederwertige Byte des Wortes von portid
und das höherwertige von portid +1.
Rückgabewert :
inpw liefert den gelesenen Wert zurück.
Prototyp : int int86(int intno, union REGS *inregs, union REGS
*outregs);
Header : <dos.h>
Beschreibung :
int86 führt einen 8086 Software-Interrupt durch, d.h. einen Aufruf
der Routine, auf die der durch intno angegebene Interrupt-Vektor
zeigt. Vor der Ausführung des Interrupts werden die Prozessorregister
mit den durch inregs definierten Werten geladen. Nach der Ausführung
werden die Registerinhalte in outregs, der Status des Carry-Flag
im Feld x.cflag von outregs und das 8086-Flag-Register im Feld x.flags
von outregs gespeichert. Ein gesetztes Carry-Flag zeigt im allgemeinen
einen Fehler an. inregs und outregs können auf dieselbe
Struktur zeigen.
Rückgabewert :
int86 liefert den Wert des Registers AX nach der Ausführung des
Interrupt zurück.
Prototyp : int int86x(int intno, union REGS *inregs, union REGS
*outregs, struct SREGS *segregs);
Header : <dos.h>
Beschreibung :
int86x führt einen Software-Interrupt durch, d.h. einen Aufruf
der Routine, auf die der durch intno angegebene Interrupt-Vektor
zeigt. Vor der Ausführung des Interrupt werden die Prozessorregister
mit den durch inregs angegebenen Werten geladen. Zusätzlich
kopiert int86x die Werte von segregs->ds und segregs->es
in die entsprechenden Register, bevor es den Interrupt ausführt. Auf
diese Weise kann ein Programm, das (Real-Mode-)far-Zeiger benutzt, angeben,
welches Segment für den Software-Interrupt verwendet werden soll.
Nach der Rückkehr vom Software-Interrupt kopiert int86x die Registerwerte
in outregs, den Status des Carry-Flag in das Feld x.cflag von outregs
und das 8086-Flag-Register in das Feld x.flags von outregs. Anschließend
stellt int86x den alten Inhalt des DS-Registers wieder her und speichert
die Werte der Segmentregister in den Feldern segregs->es bzw. segregs->ds.
Ist das Carry-Flag gesetzt, zeigt das im allgemeinen einen Fehler an.
int86x ermöglicht den Aufruf eines 8086-Software-Interrupts, der
mit den Registern DS und/oder ES arbeitet. inregs und outregs
können auf dieselbe Struktur zeigen.
Rückgabewert :
int86x liefert den Wert des Registers AX nach der Ausführung des
Interrupt zurück.
Prototyp : int intdos(union REGS *inregs, union REGS *outregs);
Header : <dos.h>
Beschreibung :
intdos führt einen Aufruf des DOS-Interrupt 0x21 aus, wobei die
Nummer der auszuführenden Funktion durch inregs->h.ah angegeben
sein muß. Nach der Rückkehr vom Interrupt 0x21 kopiert intdos
die Registerwerte in outregs, den Status des Carry-Flag in das Feld
x.cflag von outregs und den Inhalt des 8086-Flag-Registers in das
Feld x.flags von outregs. Ein gesetztes Carry-Flag zeigt einen Fehler
an. inregs und outregs können auf dieselbe Struktur
zeigen.
Rückgabewert :
intdos liefert den von DOS gesetzten Inhalt des Registers AX zurück.
Prototyp : int intdosx(union REGS *inregs, union REGS *outregs,
struct SREGS *segregs);
Header : <dos.h>
Beschreibung :
intdosx führt einen Aufruf des DOS-Interrupt 0x21 aus, wobei die
Nummer der auszuführenden Funktion durch inregs->h.ah angegeben
sein muß.
Zusätzlich kopiert intdosx die Werte von segregs->ds und segregs->es in die entsprechenden Register, bevor es den Interrupt ausführt. Auf diese Weise kann ein Programm, das (Real-Mode-)far-Zeiger benutzt, angeben, welches Segment für den Software-Interrupt verwendet werden soll.
Nach der Rückkehr vom Interrupt 0x21 kopiert intdosx die Registerwerte in outregs, den Status des Carry-Flag in das Feld x.cflag von outregs und das 8086-Flag-Register in das Feld x.flags von outregs. Anschließend stellt int86x den alten Inhalt des DS-Registers wieder her und speichert die Werte der Segmentregister in den Feldern segregs->es bzw. segregs->ds. Ist das Carry-Flag gesetzt, zeigt dies im allgemeinen einen Fehler an.
intdosx ermöglicht den Aufruf eines 8086-Software-Interrupts, der mit den Registern DS und/oder ES arbeitet. inregs und outregs können auf dieselbe Struktur zeigen.
Rückgabewert :
intdosx liefert den von DOS gesetzten Inhalt des Registers AX zurück.
Prototyp : int isalnum(int c);
Header : <ctype.h>
Beschreibung :
Das Makro isalnum prüft, ob das als Integer-Wert übergebene
Zeichen ein Buchstabe (A bis z oder a bis z) oder eine Ziffer (0 bis 9)
ist.
Rückgabewert :
isalnum liefert einen Wert ungleich Null zurück, wenn c ein Buchstabe
oder eine Ziffer ist.
Protoyp : int isalpha(int c);
Header : <ctype.h>
Beschreibung :
isalpha prüft, ob das als Integer-Wert übergebene Zeichen
ein Buchstabe (A bis Z oder a bis z) ist.
Rückgabewert :
isalpha liefert einen Wert ungleich Null zurück, wenn c ein Buchstabe
ist.
Prototyp : int isascii(int c);
Header : <ctype.h>
Beschreibung :
isascii prüft, ob das als Integer-Wert übergebene Zeichen
im Bereich von 0 bis 127 liegt.
Rückgabewert :
isascii liefert einen Wert ungleich Null zurück, wenn das niederwertige
Byte von c im Bereich von 0 bis 127 (0x00-0x7F) liegt.
Prototyp : int iscntrl(int c);
Header : <ctype.h>
Beschreibung :
iscntrl prüft, ob das als Integer-Wert übergebene Zeichen
ein Lösch- oder Steuerzeichen ist.
Rückgabewert :
iscntrl liefert einen Wert ungleich Null zurück, wenn c ein Lösch-
oder Steuerzeichen ist.
Prototyp : int isdigit(int c);
Header : <ctype.h>
Beschreibung :
isdigit prüft, ob das als Integer-Wert übergebene Zeichen
eine Dezimalziffer ist.
Rückgabewert :
isdigit liefert einen Wert ungleich Null zurück, wenn c eine Ziffer
ist.
Prototyp : int isgraph(int c);
Header : <ctype.h>
Beschreibung :
isgraph prüft, ob das als Integer-Wert übergebene Zeichen
ein druckbares Zeichen ist (ohne Leerzeichen).
Rückgabewert :
isgraph liefert einen Wert ungleich Null zurück, wenn c ein druckbares
Zeichen ist.
Prototyp : int islower(int c);
Header : <ctype.h>
Beschreibung :
islower prüft, ob das als Integer-Wert übergebene Zeichen
ein Kleinbuchstabe ist.
Rückgabewert :
islower liefert einen Wert ungleich Null zurück, wenn c ein Kleinbuchstabe
ist.