A következõkben a BORLAND C++ legfontosabb, általános
célú könyvtári függvényeit ismertetjük.
Mindegyik függvény esetében utalunk a portabilitási
lehetõségekre (ANSI C, és/vagy UNIX kompatibilitás;
DOS vagy BORLAND C++ specifikus; csak C++-ban hozzáférhetõ,
stb), illetve az MS-Windows alkalmazói programokban való
felhasználási lehetõségre.
abort | stdlib.h, process.h |
void abort(void);Megjegyzés: Az Abnormal program termination szöveget írja ki a standard hiba-periférián (stderr) és aktiválja 3-as kóddal az _exit függvényt.
Visszatérési érték: 3-as kóddal tér vissza a hívó programba vagy a DOS-ba.
Portabilitás: ANSI C és UNIX kompatibilis.
acos | math.h, stdlib.h, complex.h |
Valós verzió: #include <math.h> double acos(double x); |
Komplex verzió: #include <complex.h> double acos(complex x); |
Visszatérési érték:
közötti értékkel tér vissza.
Portabilitás: Az acos valós változata
ANSI C és UNIX kompatibilis. A függvény komplex változata
BORLAND C++ specifikus.
asctime | time.h |
#include <time.h> char *asctime(const struct tm *tblock);Megjegyzés: 26 karakteres sztringként adja vissza a *tblock struktúrában tárolt dátumot és idõt (a 26-dik karakter az EOS):
Sun Aug 16 02:05:45 1989\n\0
Visszatérési érték: A karakterláncra mutató pointer. A sztringet a következõ asctime() vagy ctime() hívás felülírja.
Portabilitás: ANSI C és UNIX kompatibilis.
asin | math.h, complex.h |
Valós verzió: #include <math.h> double asin(double x); |
Komplex verzió: #include <complex.h> double asin(complex x); |
Portabilitás: A függvény valós változata ANSI C és UNIX kompatibilis. A függvény komplex verziója csak BORLAND C++-ban használható.
assert | assert.h |
#include <assert.h> #include <stdio.h> void assert(int condition);Megjegyzés: Ha a condition hamis (0), akkor az assert a következõ üzenetet írja ki a stderr folyamba (a terminálra): Assertion failed: condition, file forrásfile, line sor száma és az abort hívása révén terminálja a programot. Ha az assert.h include file beépítése elõtt definiáljuk az NDEBUG szimbólumot tetszõleges értékkel, akkor az assert makró hatástalan lesz.
Portabilitás: ANSI C és UNIX kompatibilis.
atan | math.h, complex.h |
Valós verzió: #include <math.h> double atan(double x); |
Komplex verzió: #include <complex.h> double atan(complex x); |
Portabilitás: A függvény valós változata
ANSI C és UNIX kompatilis. A komplex verziója csak BORLAND
C++-ban használható.
atan2 | math.h |
#include <math.h> double atan2(double y, double x);Visszatérési érték:
Portabilitás: ANSI C és UNIX kompatibilis.
atof | math.h, stdlib.h |
#include <math.h> double atof(const char *s);Visszatérési érték: Az input sztringnek megfelelõ lebegõpontos érték. Ha a konvertálás sikertelen, a visszatérési érték 0.
Portabilitás: ANSI C és UNIX kompatibilis.
atoi | stdlib.h |
int atoi(const char *s);Visszatérési érték: Az input sztringnek megfelelõ egész érték. Ha a konvertálás sikertelen, a visszatérési érték 0.
Portabilitás: ANSI C és UNIX kompatibilis.
atol | stdlib.h |
#include <stdlib.h> long atol(const char *s);Visszatérési érték: Az input sztring konvertált értéke. Ha a konvertálás sikertelen, a visszatérési érték 0L.
Portabilitás: ANSI C és UNIX kompatibilis.
bcd | bcd.h |
#include <bcd.h> bcd bcd(int x); bcd bcd(double x); bcd bcd(double x, int decimals);Megjegyzés: Az összes aritmetikai mûvelet mûködik BCD számokkal. A BCD számok 17 jegyre pontosak, abszolút tartományuk 10-125 és 10125 között van. A decimals argumentum opcionális, amellyel megadható, hogy mennyi decimális jegy legyen a tizedes pont után.
Portabilitás: BORLAND C++ specifikus.
bdos | dos.h |
int bdos(int dosfun, unsigned dosdx, unsigned dosal);Megjegyzés: dosfun az MS-DOS Programmer's Reference Manual-ban definiált funkciókód
dosdx | DX regiszter bemenõ értéke |
dosal | AL regiszter bemenõ értéke |
Portabilitás: DOS specifikus.
bsearch | stdlib.h |
#include <stdlib.h> void *bsearch(const void *key, const void *base, size_t nelem, size_t width, int(*fcomp)(const void *, const void *));Megjegyzés: A size_t típus elõjelnélküli egészként van definiálva.
base | Az adott tömb kezdõcíme |
key | a keresendõ értékre mutató pointer |
nelem | a tömb elemeinek száma |
width | a tömbelemek mérete sizeof egységben |
fcomp | pointer az összehasonlító függvényre |
< 0 | ha az elsõ pointer mutatta argumentum kisebb a maásodiknál |
= 0 | ha a két elem megegyezik |
> 0 | ha az alsõ pointer mutatta argumentum nagyobb a másodiknál |
Portabilitás: ANSI C és UNIX kompatibilis.
cabs | math.h |
#include <math.h> double cabs(struct complex z);Megjegyzés: A struktúra az alábbi:
struct complex { double x, y; }az x a valós, az y a képzetes rész.
Visszatérési érték: A z komplex szám abszolút értéke vagy HUGE_VAL túlcsordulás esetén.
Portabilitás: UNIX kompatibilis.
calloc | stdlib.h, alloc.h |
#include <stdlib.h> void *calloc(size_t nitems, size_t size);Megjegyzés: A calloc lefoglal egy nitems . size méretû memóriaterületet és kinullázza.
Visszatérési érték: A lefoglalt blokkra mutató pointer. Ha a lefoglalandó méretre nincs hely, vagy nitems vagy size 0, akkor NULL-t ad vissza.
Portabilitás: ANSI C és UNIX kompatibilis.
chdir | dir.h |
int chdir(const char *path);Megjegyzés: Lemezegység is specifikálható a path argumentumban, például
chdir("a:\\borlandc");Visszatérési érték: Sikeres végrehajtás esetén a visszatérési érték 0, különben -1 és az errno a következõ hibajelzésre lesz beállítva: ENOENT a path (útvonal) vagy a file név nem létezik.
Portabilitás: UNIX kompatibilis.
clock | time.h |
#include <time.h> clock_t clock(void);Megjegyzés: A clock segítségével két esemény közötti idõintervallum meghatározható. Ha az értéket másodpercben kívánjuk megkapni, a visszaadott értéket el kell osztani a CLK_TCK szimbólummal.
Visszatérési érték: A program indulása óta eltelt processzor idõ belsõ egységben.
Portabilitás: ANSI C kompatibilis.
close | io.h |
int close(int handle);Megjegyzés: A handle file-leíróval azonosított file-t zárja le.
Visszatérési érték: Hiba esetén az errno változót beállítja a EBADF értékre (rossz file azonosító szám).
Portabilitás: UNIX kompatibilis.
complex | complex.h |
#include <complex.h> complex complex(double real, double imag);Megjegyzés: A megadott valós és képzetes részbõl komplex számot hoz létre. Ha a képzetes rész 0, akkor az imag megadása elhagyható. A C++-ban a complex osztály számára a complex függvény a konstruktor. A C++ használata szükséges a komplex aritmetikához. Ha nem használjuk a C++-t, akkor csak a struct complex és a cabs használható, mindkettõ a math.h-ban van deklarálva. Acomplex.h lehetõvé teszi a +, -, *, /, +=, -=, *=, /=, ==, != operátorok használatát. Szabadon keverhetõk a komplex mûveletekben az egész, a duplapontosságú és más numerikus típusok. Ugyanúgy használható a << és >> az inputra és outputra, mint más típusoknál.
Visszatérési érték: A komplex szám az adott valós és képzetes részeivel.
Portabilitás: csak C++-ban használható.
conj | complex.h |
#include <complex.h> complex conj(complex z);Megjegyzés: A conj(z) azonos a complex(real(z),-imag(z)) hívásával.
Visszatérési érték: A komplex szám konjugáltja.
Portabilitás: Csak C++-ban használható.
cos | math.h, complex.h |
Valós verzió: #include <math.h> double cos(double x); |
Komplex verzió: #include <complex.h> double cos(complex x); |
Visszatérési érték: A radiánban megadott szög koszinusza.
Portabilitás: A függvény valós verziója
ANSI C és UNIX kompatibilis. Komplex verziója csak C++-ban
használható.
cosh | math.h, complex.h |
Valós verzió: #include <math.h> double cosh(double x); |
Komplex verzió: #include <complex.h> double cosh(complex x); |
Portabilitás: A függvény valós verziója
ANSI C és UNIX kompatibilis. A komplex verzió csak C++-ban
használható.
creat | io.h |
#include <sys\stat.h> int creat(const char *path, int amode);Megjegyzés: Létrehozza vagy felülírja a path-ban megadott nevû file-t amode hozzáférési móddal.
amode változó értéke | hozzáférési mód |
S_IWRITE | csak írásra (DOS alatt olvasást is enged) |
S_IREAD | csak olvasásra |
S_READ | S_IWRITE | írásra és olvasásra |
Portabilitás: UNIX kompatibilis.
ctime | time.h |
#include <time.h> char *ctime(const time_t *time);Megjegyzés: *time egy megelezõ time() hívással állítható be. A dátumot és az idõt az alábbi formájú, újsor és EOS karakterrel lezárt 26 karakteres sztringben szolgáltatja:
Sun Aug 16 02:05:45 1989\n\0
Visszatérési érték: A karakterláncra mutató pointer. A sztringet a következõ asctime(), vagy ctime() hívás felülírja.
Portabilitás: ANSI C és UNIX kompatibilis.
ecvt | stdlib.h |
char *ecvt(double value, int ndig, int *dec, int *sign);Megjegyzés: A value értékét konvertálja ndig számjegyet tartalmazó sztringgé, *dec-be a tizedespont pozícióját teszi a rutin (maga a tizedespont nem szerepel a sztringben), *sign-ba pedig nem 0 kerül, ha az érték negatív.
Visszatérési érték: A sztringre mutató pointer, ami egy statikus bufferben van. ecvt következõ hívása felül fogja írni az új értékkel.
Portabilitás: UNIX kompatibilis.
eof | io.h |
int eof(int handle);Visszatérési érték: Ha az aktuális pozíció a file-vég, az eof visszatérési értéke 1, különben 0.
Portabilitás: DOS specifikus.
exec... | process.h |
Portabilitás: A BORLAND C++ implementáció
DOS specifikus, de a UNIX alatt hasonló függvénycsalád
létezik.
exit | process.h, stdlib.h |
void exit(int status);Megjegyzés: A terminálás elõtt az összes file-t lezárja. Nem tér vissza. A status a visszaadott státuszkód, használható szimbólumok:
EXIT_SUCCESS | normál program terminálás |
EXIT_FAILURE | terminálás hibával |
_exit | process.h, stdlib.h |
void _exit(int status);Megjegyzés: Terminálja a végrehajtást a file-ok lezárása nélkül.
Portabilitás: UNIX kompatibilis.
exp | math.h, complex.h |
Valós verzió: #include <math.h> double exp(double x); |
Komplex verzió: #include <complex.h> double exp(complex x); |
Portabilitás: A valós változat ANSI C és
UNIX kompatibilis, a komplex változat csak C++-ban hozzáférhetõ.
farcalloc | alloc.h |
void far *farcalloc(unsigned long nunits, unsigned long unitsz);Megjegyzés: Ugyanaz a funkciója, mint a calloc-nak, de small és medium modellbõl is lehetõvé teszi az összes rendelkezésre álló RAM lefoglalását, valamint segítségével 64 Kbyte-nál nagyobb tömbök számára is foglalhatunk le memóriát. A tiny kivételével minden modellbõl hívható.
Visszatérési érték: Egy far pointer, mely az újonnan lefoglalt blokkra mutat, illetve NULL, ha nincs elég memória.
Portabilitás: DOS specifikus.
farmalloc | alloc.h |
void far *farmalloc(unsigned long nbytes);Megjegyzés: Lásd malloc-ot és farcalloc-ot.
Visszatérési érték: Egy far pointer, mely az újonnan lefoglalt blokkra mutat, illetve NULL, ha nincs elég memória.
Portabilitás: DOS specifikus.
farfree | alloc.h |
void farfree(void far *block);Megjegyzés: block egy megelõzõ farmalloc(), farcalloc() illetve farrealloc() hívásból származhat.
Portabilitás: DOS specifikus.
farrealloc | alloc.h |
void far *farrealloc(void far *oldblock, unsigned long nbytes);Megjegyzés: nbytes nagyságúra módosítja az oldblock mutatta, megelõzõ farmalloc() stb. hívásból származó allokált blokkot. Tartalmát új területre másolja, ha a kérés teljesítése az eredeti helyen nem lehetséges.
Visszatérési érték: Az újra allokált blokk címe, amely lehet, hogy eltér oldblock-tól. Ha a kért méretnövelés nem teljesíthetõ, NULL értékkel tér vissza.
Portabilitás: DOS specifikus.
fclose | stdio.h |
#include <stdio.h> int fclose(FILE *stream);Megjegyzés: A stream file-mutatóval azonosított file-t zárja le.
Visszatérési érték: A visszatérési érték sikeres lezárás esetén 0, különben hiba esetén EOF.
Portabilitás: ANSI C és UNIX kompatibilis.
fcvt | stdlib.h |
#include <stdlib.h> char *fcvt(double value, int ndig, int *dec, int *sign);Megjegyzés: A value értékét konvertálja ndig decimális számjegyet tartalmazó sztringgé, *dec-be a tizedespont pozícióját teszi a rutin (maga a tizedespont nem szerepel a sztringben), *sign-ba pedig nem 0 kerül, ha az érték negatív.
Visszatérési érték: A sztringre mutató pointer, ami egy statikus bufferben van. fcvt következõ hívása felül fogja írni az új értékkel.
Portabilitás: ANSI C és UNIX kompatibilis.
feof | stdio.h |
#include <stdio.h> int eof(FILE *stream);Visszatérési érték: A visszatérési érték nem 0, ha a stream file-mutatóval azonosított file aktuális pozíciója a file-vég.
Portabilitás: ANSI C és UNIX kompatibilis.
ferror | stdio.h |
#include <stdio.h> int ferror(FILE *stream);Megjegyzés: A getc stb. rutinok mind file vége esetén, mind adatátviteli hiba esetén EOF értékkel térnek vissza. A ferror és a feof használható annak eldöntésére, hogy melyik eset állt elõ.
Visszatérési érték: A visszatérési érték nem 0, ha a stream file-mutatóval azonosított file írása vagy olvasása közben adatátviteli hiba volt.
Portabilitás: ANSI C és UNIX kompatibilis.
fgets | stdio.h |
#include <stdio.h> char *fgets(char *s, int n, FILE *stream);Megjegyzés: Az stream által azonosított file-ból maximum n-1 karaktert az s sztringbe olvas, de leáll az olvasás az elsõ beolvasott újsor karakter után. A sztring végére kiteszi az EOS karaktert.
Visszatérési érték: Sikeres olvasás esetén az s sztringre mutató pointer, hiba esetén NULL.
Portabilitás: ANSI C és UNIX kompatibilis.
fopen | stdio.h |
#include <stdio.h> FILE *fopen(const char *filename, const char *mode);Megjegyzés: Megnyitja vagy létrehozza a filename nevû file-t a mode értékének megfelelõen. A név tartalmazhat meghajtó (drive) és útvonal (path) megadást is, de ne felejtsük el a '\' karaktereket megkettõzni. Amode sztring értékei az alábbiak lehetnek:
r | létezõ file megnyitása csak olvasásra |
w | új file létrehozása (vagy létezõ felülírása) és megnyitása csak írásra |
a | létezõ file megnyitása hozzáfûzésre (append), vagy új file létrehozása csak írásra, ha az nem létezik |
r+ | létezõ file megnyitása olvasásra és írásra |
w+ | új file létrehozása (vagy létezõ felülírása) és megnyitása olvasásra és írásra |
a+ | megnyitás olvasásra és hozzáfûzésre. Ha a file nem létezik, elõször létrehozza. |
Visszatérési érték: Sikeres megnyitás esetén a file-mutató, hiba esetén aNULL pointer.
Portabilitás: ANSI C és UNIX kompatibilis.
fprintf | stdio.h |
#include <stdio.h> int fprintf(FILE *stream, const char *format, ...);Megjegyzés: Mûködése megegyezik a printf rutinéval, de megadható a kimeneti folyam a stream file-mutatóval. További részleteket a printf függvénycsalád ismertetésénél, a 1.10.2-es szakaszban találhatunk.
Visszatérési érték: A kiírt byte-ok száma, vagy hiba esetén EOF.
Portabilitás: ANSI C és UNIX kompatibilis.
fputs | stdio.h |
#include <stdio.h> int fputs(const char *s, FILE *stream);Megjegyzés: Kiírja az s sztringet a stream-mel azonosított file-ba. A záró EOS nem kerül kivitelre.
Visszatérési érték: Sikeres végrehajtás esetén az utolsó kiírt karakterrel tér vissza, egyébként a visszatérési érték EOF.
Portabilitás: ANSI C és UNIX kompatibilis.
fread | stdio.h |
#include <stdio.h> size_t fread(void *ptr, size_t size, size_t n, FILE *stream);Megjegyzés: A stream-mel azonosított file-ból beolvas n darab size méretû adatot a ptr által mutatott tömbbe.
Visszatérési érték: A beolvasott adatok (nem a byte-ok) száma. Hiba, vagy file-vég esetén n-nél kevesebbet ad vissza.
Portabilitás: ANSI C és UNIX kompatibilis.
free | stdlib.h, alloc.h |
void free(void *block);Megjegyzés: Felszabadít egy lefoglalt memóriablokkot. A block egy megelõzõ calloc(), malloc() vagy a realloc() hívás révén kapott mutató.
Portabilitás: ANSI C és UNIX kompatibilis.
fscanf | stdio.h |
#include <stdio.h> int fscanf(FILE *stream, const char *format, ...);Megjegyzés: Mûködése megegyezik a scanf rutinéval, de megadható a bemeneti folyam a stream file-mutatóval.
Visszatérési érték: A sikeresen beolvasott mezõk száma. File-vég esetén EOF-ot ad.
Portabilitás: ANSI C és UNIX kompatibilis.
fseek | stdio.h |
#include <stdio.h> int fseek(FILE *stream, long offset, int origin);Megjegyzés: Beállítja a stream által azonosított file-ban az aktuális file-pozíciót az origin-hez képest offset byte-ra. Az origin az alábbi értékeket veheti fel:
szimbólum | számérték | offset számítása |
SEEK_SET | 0 | a file elejétõl |
SEEK_CUR | 1 | az aktuális file pozíciótól |
SEEK_END | 2 | a file végétõl |
Portabilitás: ANSI C és UNIX kompatibilis.
ftell | stdio.h |
#include <stdio.h> long int ftell(FILE *stream);Megjegyzés: A file-pozíció a file elejétõl byte-okban kifejezett távolság,0L-ról indul.
Visszatérési érték: Az aktuális file-pozíció értéke sikeres végrehajtás esetén, egyébként -1L.
Portabilitás: ANSI C és UNIX kompatibilis.
fwrite | stdio.h |
#include <stdio.h> size_t fwrite(const void *ptr, size_t size, size_t n, FILE *stream);Megjegyzés: A stream-mel azonosított file-ba kiír n darab size méretû adatot a ptr mutatta tömbbõl.
Visszatérési érték: A kiírt adatok (nem a byte-ok) száma. Hiba esetén n-nél kevesebbet ad vissza.
Portabilitás: ANSI C és UNIX kompatibilis.
gcvt | stdlib.h |
#include <dos.h> char *gcvt(double value, int ndec, char *buf);Megjegyzés: value értékét konvertálja ndec értékes számjegyre fixpontos alakban (FORTRAN F forma), ha lehet, egyébként lebegõpontos alakban (FORTRAN E forma). Az eredmény a buf mutatta pufferbe kerül, EOS karakterrel lezárva.
Visszatérési érték: buf.
Portabilitás: ANSI C és UNIX kompatibilis.
getc | stdio.h |
#include <stdio.h> int getc(FILE *stream);Megjegyzés: Beolvassa a file következõ karakterét, és egész számmá konvertálja elõjelkiterjesztés nélkül. getc makróként lett megvalósítva.
Visszatérési érték: A beolvasott karakter, file-vég vagy hiba esetén EOF.
Portabilitás: ANSI C és UNIX kompatibilis.
getch | conio.h |
int getch(void);Megjegyzés: A getch a stdin folyamot (standard input) használja.
Visszatérési érték: a beolvasott karakter.
Portabilitási opciók: DOS specifikus, WINDOWS-ban
nem használható.
getchar | stdio.h |
#include <stdio.h> int getchar(void);Megjegyzés: Megegyezik a getc(stdin) hívással.
Visszatérési érték: a beolvasott karakter.
Portabilitás: ANSI C és UNIX kompatibilis. WINDOWS-ban
nem használható.
getche | conio.h |
int getche(void);Visszatérési érték: a beolvasott karakter.
Portabilitás: ANSI C és UNIX kompatibilis. WINDOWS-ban
nem használható.
gets | stdio.h |
char *gets(char *s);Megjegyzés: A beolvasott sort az s sztring változóba helyezi, az újsor karaktert EOS karakterrel helyettesítve.
Visszatérési érték: Sikeres olvasás esetén s, file-vég vagy hiba esetén NULL.
Portabilitás: ANSI C és UNIX kompatibilis. WINDOWS-ban
nem használható.
gmtime | time.h |
#include <time.h> struct tm *gmtime(const time_t *time);Megjegyzés: time feltöltését a time hívásával végezhetjük. A tm struktúra definíciója a time.h include file-ban található.
Visszatérési érték: A struktúrára mutató pointer. A következõ gmtime() hívás felülírja az új értékkel.
Portabilitás: DOS specifikus.
int86 | dos.h |
#include <dos.h> int int86(int intno, union REGS *inregs, union REGS *outregs);Megjegyzés: Az int86 az intno argumentumban specifikált 8086 szoftver interruptot hajtja végre. Mielõtt végrehajtaná a szoftver interruptot, átmásolja a regiszterek értékét az inregs paraméterbõl a regiszterekbe. Az interrupt végrehajtása után az int86 átmásolja a regiszterek tartalmát az outregs-be. A carry flag státuszát a x.cflag tartalmazza.
Visszatérési érték: A visszaadott AX regiszterérték.
Portabilitás: A 8086 processzor családra specifikus.
int86x | dos.h |
#include <dos.h> int int86x(int intno, union REGS *inregs, union REGS *outregs, struct SREGS *segregs);Megjegyzés: Az intno argumentumban specifikált 8086 szoftware interruptot hívja meg. inregs és outregs a be-, illetve kimenõ regiszterkészlet mutatói (lehetnek azonosak), segregs a szegmens regiszterkészlet mutatója. A fenti struktúra definíciója a dos.h fejlécfile-ban található.
Visszatérési érték: A visszaadott AX regiszterérték.
Portabilitás: 8086 processzor családra specifikus.
isalnum | ctype.h |
#include <ctype.h> int isalnum(int c);Visszatérési érték: nem nulla, ha a c betû (A-Z, a-z) vagy számjegy (0-9).
Portabilitás: UNIX specifikus.
isalpha | ctype.h |
#include <ctype.h> int isalpha(int c);Visszatérési érték: nem nulla, ha a c betû (A-Z vagy a-z).
Portabilitás: ANSI C és UNIX kompatibilis.
isascii | ctype.h |
#include <ctype> int isascii(int c);Visszatérési érték: nem nulla, ha a c alsó byte-jának értéke 0-127 (0x00 - 0x7F).
Portabilitás: UNIX kompatibilis.
iscntrl | ctype.h |
X #include <ctype.h> int iscntr(int c);Visszatérési érték: nem nulla, ha a c értéke a DEL karakter,
vagy vezérlõkarakter (0x7F, vagy 0x00 - 0x1F).
Portabilitás: ANSI C és UNIX kompatibilis.
isdigit | ctype.h |
#include <ctype.h> int isdigit(int c);Visszatérési érték: nem nulla, ha a c értéke számjegy: (0 - 9).
Portabilitás: ANSI C és UNIX kompatibilis.
islower | ctype.h |
#include <ctype.h> int islower(int c);Visszatérési érték: nem nulla, ha a c kisbetû (a - z);
Portabilitás: ANSI C és UNIX kompatibilis.
isprint | ctype.h |
#include <ctype.h> int isprint(int c);Visszatérési érték: nem nulla, ha a c nyomtatható karakter (0x20 - 0x7E).
Portabilitás: ANSI C és UNIX kompatibilis.
isspace | ctype.h |
#include <ctype.h> int isspace(int c);Visszatérési érték: nem nulla, ha a c white space karakter, azaz betûköz (space), tabulátor, kocsivissza (carrige return), újsor, vizszintes vagy függõleges tabulátor, vagy lapdobás karakter (0x09 - 0x0D).
Portabilitás: ANSI C és UNIX kompatibilis.
isupper | ctype.h |
#include <ctype.h> int isupper(int c);Visszatérési érték: nem nulla, ha a c nagybetû (A - Z).
Portabilitás: ANSI C és UNIX kompatibilis.
isxdigit | ctype.h |
#include <ctype.h> int isxdigit(int c);Visszatérési érték: nem nulla, ha a c hexadecimális számjegy ( 0 - 9, A - F, a - f).
Portabilitás: ANSI C és UNIX kompatibilis.
itoa | stdlib.h |
char *itoa(int value, char *sztring, int radix);Megjegyzés: A value értékét EOS karakterrel lezárt sztringgé konvertálja a sztring mutatta tömbbe. A radix a konvertálás alapszámát határozza meg (2-36). Ha a value negatív, és radix 10, akkor elõjelesen konvertál, egyébként elõjeltelenül.
Visszatérési érték: a sztring-re mutató pointer.
Portabilitás: DOS specifikus.
kbhit | conio.h |
int kbhit(void);Visszatérési érték: Nem nulla, ha van beolvasható karakter.
Portabilitási opciók: DOS specifikus, WINDOWS-ban
nem használható.
keep | dos.h |
void keep(unsigned char status, unsigned size);Megjegyzés: status státuszkóddal tér vissza a DOS-hoz, és a program size paragrafus hosszú részét (size*16 byte) rezidensen a tárban hagyja.
Visszatérési érték: Nem tér vissza.
Portabilitási opciók: DOS specifikus, WINDOWS-ban
nem használható.
lfind | stdlib.h |
#include <stdlib.h> void *lfind(const void *key, const void *base, size_t *num, size_t width, int (*fcmp)(const void *, const void *));Megjegyzés: A *key értéke szerint lineáris keresés történik a base tömbben a felhasználó által definiált fcmp összehasonlító rutin felhasználásával (lásdd bsearch). A tömb *num elembõl áll, width az elemek sizeof mérete.
Visszatérési érték: Az elsõ egyezõ tömbelem címe, NULL, ha nincs ilyen.
Portabilitás: DOS specifikus.
log | math.h, complex.h |
Valós verzió: #include <math.h> double log(double x); |
Komplex verzió: #include <complex.h> double log(complex x); |
Portabilitás: A függvény valós változata
ANSI C és UNIX kompatibilis, komplex verziója csak C++-ban
használható.
log10 | math.h, complex.h |
Valós verzió: #include <math.h> double log10(double x); |
Komplex verzió: #include <complex.h> double log10(complex x); |
Portabilitás: A függvény valós változata
ANSI C és UNIX kompatibilis, komplex változata csak C++-ban
használható.
lsearch | stdlib.h |
#include <stdlib.h> void *lsearch(const void *key, const void *base, size_t *num, size_t width, int (*fcmp)(const void *, const void *));Megjegyzés: A *key értéke szerint lineáris keresés történik a base tömbben a felhasználó által definiált fcmp összehasonlító rutin felhasználásával (lásd bsearch). A tömb *num elembõl áll, width az elemek sizeof mérete. Ha a keresett elemet nem találja, akkor a tömb végéhez hozzáilleszti (append).
Visszatérési érték: Ha új elemet illesztett a tömbbe, *num értékét módosítja.
Portabilitás: UNIX kompatibilis.
lseek | io.h |
#include <io.h> long lseek(int handle, long offset, int origin);Megjegyzés: Beállítja a handle file-leíró által azonosított file-ban az aktuális file-pozíciót az origin-hez képest offset byte-ra. Az origin az alábbi értékeket veheti fel:
szimbólum | számérték | offset számítása |
SEEK_SET | 0 | a file elejétõl |
SEEK_CUR | 1 | az aktuális file pozíciótól |
SEEK_END | 2 | a file végétõl |
Portabilitás: UNIX kompatibilis.
ltoa | stdlib.h |
#include <stdlib.h> char *ltoa(long value, char *sztring, int radix);Megjegyzés: A value értékét EOS karakterrel lezárt sztringgé konvertálja a sztring mutatta tömbbe. A radix a konvertálás alapszámát határozza meg (2-36). Ha a value negatív, és radix 10, akkor elõjelesen konvertál, egyébként elõjeltelenül.
Visszatérési érték: a sztring-re mutató pointer.
Portabilitás: DOS specifikus.
malloc | stdlib.h, alloc.h |
#include <alloc.h> void *malloc(size_t size);Megjegyzés: size byte-nyi memóriát igényel futás közben.
Visszatérési érték: az újonnan lefoglalt memóriablokkra mutató pointer, ha a kérés teljesíthetõ, egyébként NULL.
Portabilitás: ANSI C és UNIX kompatibilis.
matherr | math.h |
#include <math.h> int matherr(struct exception *e);Megjegyzés: A matherr függvény matemetikai jellegû hibák felléptekor (például 0-val osztás, lebegõpontos túl-, illetve alulcsordulás stb.) kerül meghívásra. Ha a felhasználó nem definiálja a fenti függvényt, akkor az alapértelmezés szerinti hibakezelõ lép mûködésbe.
Portabilitás: ANSI C és UNIX kompatibilis.
memchr | string.h, mem.h |
#include <mem.h> void *memchr(const void *s, int c, size_t n);Megjegyzés: Az s tömbben keresi a c karakter elsõ elõfordulását. n a tömb mérete byte-ban.
Visszatérési érték: A megtalált byte-ra mutató pointer, illetve NULL, ha nem talál.
Portabilitás: ANSI C és UNIX kompatibilis.
memcmp | string.h, mem.h |
#include <mem.h> int memcmp(const void *s1, const void *s2, size_t n);Megjegyzés: Az s1 és s2 tömb elsõ n byte-ját hasonlítja össze lexikografikusan.
Visszatérési érték: negatív, ha s1 < s2, nulla, ha s1 = s2 és pozitív, ha s1 > s2.
Portabilitás: ANSI C és UNIX kompatibilis.
memcpy | string.h, mem.h |
#include <mem.h> void *memcpy(void *dest, const void *src, size_t n);Megjegyzés: n byte-nyi blokkot másol az src területrõl a dest területre. Átfedõ területek esetén nem alkalmazható.
Visszatérési érték: dest.
Portabilitás: ANSI C és UNIX kompatibilis.
memset | string.h, mem.h |
#include <mem.h> void *memset(void *s, int c, size_t n);Megjegyzés: Az s tömb elsõ n byte-jába beírja a c karaktert.
Visszatérési érték: s.
Portabilitás: ANSI C és UNIX kompatibilis.
open | io.h |
#include <fcntl.h> #include <sys\stat.h> int open(const char *name, int mode, unsigned attrib);Megjegyzés: Megnyitja a name nevû file-t, és elõkészíti írásra és/vagy olvasásra a mode paraméter szerint. A mode az alábbi szimbólumok bináris OR kapcsolatával ( | ) képezhetõ. Ebbõl a csoportból pontosan egy szimbólum szerepelhet:
O_RDONLY | nyitás csak olvasásra |
O_WRONLY | nyitás csak írásra |
O_RDWR | nyitás olvasásra és írásra |
O_APPEND | Megadása esetén minden írási mûveletet megelõzõen a file-pozíció a file végére lesz állítva. |
O_CREAT | Ha a file nem létezik, akkor létre kell hozni. |
O_EXCL | Ha a file létezik és O_CREAT kérelem volt, hibával tér vissza. |
O_TRUNC | Ha a file létezik, akkor levágja 0 hosszúságúra. |
O_BINARY | A file-t bináris kezelési módban nyitja meg. |
O_TEXT | A file-t szöveges kezelési módban nyitja meg. |
S_IWRITE | engedélyesés írásra |
S_IREAD | engedélyezés olvasásra |
S_READ | S_IWRITE | engedélyezés írásra és olvasásra |
Portabilitás: UNIX kompatibilis.
perror | stdio.h |
void perror(const char *s);Megjegyzés: Az stderr perifériára (általában a képernyõ) kiírja az s sztringet, egy kettõspontot és az errno tartalmának megfelelõen a legutoljára bekövetkezett rendszerhiba megnevezését.
Portabilitás: ANSI C és UNIX kompatibilis.
printf | stdio.h |
int printf(const char *format, ...);Megjegyzés: A format formátumsztringnek megfelelõen konvertálja az argumentumait, és az így nyert karaktereket az stdout perifériára küldi. A formátumsztring kétféle információelembõl épül fel: egyszerû karakterekbõl (ezek változtatás nélkül kerülnek át a kimenetre), illetve konverzió-specifikációkból (ezek a soronkövetkezõ argumentum megfelelõ feldolgozását és kiíratását írják elõ). Részletes ismertetõt találhatunk a printf függvényrõl a 1.10.2-es szakaszban.
Visszatérési érték: A kiírt byte-ok száma, hiba esetén EOF.
Portabilitás: ANSI C és UNIX kompatibilis. WINDOWS-ban
nem használható.
putc | stdio.h |
#include <stdio.h> int putc(int c, FILE *stream);Megjegyzés: Makró, amely kiírja a c karaktert a stream file-mutatójú állományba.
Visszatérési érték: A kiírt karakter, hiba esetén EOF.
Portabilitás: ANSI C és UNIX kompatibilis.
putchar | stdio.h |
#include <stdio.h> int putchar(int c);Megjegyzés: Makró, amely megfelel a putc(c, stdout) hívásnak.
Visszatérési érték: A kiírt karakter, hiba esetén EOF.
Portabilitás: ANSI C és UNIX kompatibilis.
puts | stdio.h |
#include <stdio.h> int puts(const char *s);Megjegyzés: Az s karakterláncot írja ki az stdout folyamba, és automatikusan kiegészíti egy újsor karakterrel ('\n').
Visszatérési érték: Sikeres kiírás esetén pozitív érték, egyébként EOF.
Portabilitás: ANSI C és UNIX kompatibilis.
qsort | stdlib.h |
#include <stdlib.h> void qsort(void *base, size_t nelem, size_t width, int (*fcmp)(const void *, const void *));Megjegyzés: Tetszõleges elemekbõl álló tömb rendezését végzi a felhasználó által biztosított összehasonlító függvény segítségével. Az egyes paraméterek:
base | Az adott tömb kezdõcíme |
nelem | a tömb elemeinek száma |
width | a tömbelemek mérete sizeof egységben |
fcmp | pointer az összehasonlító függvényre |
< 0 | ha az elsõ pointer mutatta argumentum kisebb a maásodiknál |
= 0 | ha a két elem megegyezik |
> 0 | ha az alsõ pointer mutatta argumentum nagyobb a másodiknál |
rand | stdlib.h |
#include <stdlib.h> int rand(void);Visszatérési érték: Az álvéletlen szám 0 és RAND_MAX között.
Portabilitás: ANSI C és UNIX kompatibilis.
random | stdlib.h |
#include <stdlib.h> int random(int num);Visszatérési érték: 0 és (num-1) közötti véletlenszám.
Portabilitás: BORLAND C++ specifikus, ez a függvény
megtalálható a Turbo Pascal-ban is.
read | io.h |
#include <io.h> int read(int handle, void *buf, unsigned len);Megjegyzés: len byte-ot olvas a handle-vel azonosított file-ból buf-ba.
Visszatérési érték: A sikeresen beolvasott byte-ok száma. File-vég esetén 0, hiba esetén -1.
Portabilitás: UNIX kompatibilis.
realloc | stdlib.h, alloc.h |
#include <stdlib.h> void *realloc(void *block, size_t size);Megjegyzés: A block argumentum mutat az elõzõleg lefoglalt memóriaterületre, amelyet size méretûre kell módosítani. Ha a blokkot növelni kell, akkor szükség esetén a régi blokk tartalmát átmásolja az új helyre.
Visszatérési érték: A memóriaterület címe, amely különbözhet block-tól. Ha a kért növelés nem teljesíthetõ, NULL értékkel tér vissza.
Portabilitás: ANSI C és UNIX kompatibilis.
scanf | stdio.h |
#include <stdio.h> int scanf(const char *format, ...);Megjegyzés: Karaktereket olvas a szabványos bemenetrõl és azokat a format formátumsztring szerint megpróbálja értelmezni és konvertálás után tárolni. Részletesebb leírást találhatunk a scanf függvénycsaládról a 1.10.2-es részben.
Visszatérési érték: A sikeresen beolvasott és eltárolt tételek száma. File-vég olvasása esetén EOF-ot ad vissza.
Portabilitás: ANSI C és UNIX kompatibilis.
setbuf | stdio.h |
#include <stdio.h> void setbuf(FILE *stream, char *buf);Megjegyzés: Közvetlenül a stream megnyitása után hívható meg. Az adatok bufferelésére a buf memóriaterület használatát írja elõ, az automatikusan lefoglalt buffer helyett.
Portabilitás: ANSI C és UNIX kompatibilis.
setmode | io.h |
#include <fcntl.h> int setmode(int handle, int mode);Megjegyzés: a mode értéke az alábbi lehet:
O_BINARY | bináris |
O_TEXT | text (szöveg) típusú |
Portabilitás: UNIX kompatibilis.
setvbuf | stdio.h |
#include <stdio.h> int setvbuf(FILE *stream, char *buf, int type, size_t size);Megjegyzés: size méretû buffert ír elõ a stream folyam számára, type bufferelési eljárás mellett. Ha buf == NULL, akkor automatikusan foglal buffert, egyébként a megadott buffert használja. A type értéke paraméter az alábbi lehet:
_IOFBF | teljesen pufferelt folyam |
_IOLBF | sorpufferelt folyam |
_IONBF | nem pufferelt folyam |
Portabilitás: ANSI C és UNIX kompatibilis.
sin | math.h, complex.h |
Valós verzió: #include <math.h> double sin(double x); |
Komplex verzió: #include <complex.h> double sin(complex x); |
Portabilitás: A függvény valós változata
ANSI C és UNIX kompatibilis, a komplex változata csak C++-ban
használható.
sinh | math.h, complex.h |
Valós verzió: #include <math.h> double sinh(double x); |
Komplex verzió: #include <complex.h> double sinh(complex x); |
spawn... | process.h |
#include <process.h> #include <stdio.h> int spawnl(int mode, char *path, char *arg0, char *arg1, ..., char *argn, NULL); int spawnle(int mode, char *path, char *arg0, char *arg1, ..., char *argn, NULL, char *envp[]); int spawnlp(int mode, char *path, char *arg0, char *arg1, ..., char *argn, NULL); int spawnlpe(int mode, char *path, char *arg0, char *arg1, ..., char *argn, NULL, char *envp[]); int spawnv(int mode, char *path, char * argv[]); int spawnve(int mode, char *path, char *argv[], char *envp[]); int spawnvp(int mode, char *path, char *argv[]); int spawnvpe(int mode, char *path, char *argv[], char *envp[]);Megjegyzés: A spawn... család gyerekfolyamatként (child process) betölt és futtat egy adott programot. A spawn... függvény nevéhez adott karakterek jelentése:
mode | a mûködési módot határozza meg |
path | a betöltendõ gyerekprogramot tartalmazó file neve |
P_WAIT | a szülõfolyamat felfüggesztve, míg a gyerek fut |
P_NOWAIT | a szülõ és a gyerek párhuzamosan futnak (nem alkalmazható DOS alatt) |
P_OVERLAY | a gyerekfolyamat felülírja a szülõ által elfoglalt memória-területet |
Portabilitás: A spawn függvények
DOS specifikusak. Az exec függvénycsalád név-kiterjesztése
és paraméterezése olyan, mint a spawn függvénycsalád
tagjaié, hívásuk szintaktikailag UNIX kompatibilis,
végrehajtási módjuk DOS specifikus...
sprintf | stdio.h |
int sprintf(char *buffer, const char *format, ...);Megjegyzés: Megegyezik a print függvénnyel, de a kimenetét a buffer memóriaterületen helyezi el.
Visszatérési érték: a kiírt byte-ok száma a lezáró EOS karakter nélkül.
Portabilitás: ANSI C és UNIX kompatibilis.
sqrt | math.h, complex.h |
Valós verzió: #include <math.h> double sqrt(double x); |
Komplex verzió: #include <complex.h> double sqrt(complex x); |
Portabilitás: A függvény valós változata
ANSI C és UNIX kompatibilis, a komplex változata csak C++-ban
használható.
srand | stdlib.h |
#include <stdlib.h> void srand(unsigned seed);Megjegyzés: a seed értékével a véletlenszám generátornak új kezdõértéket adhatunk.
Portabilitás: ANSI C és UNIX kompatibilis.
sscanf | stdio.h |
#include <stdio.h> int sscanf(const char *buffer, const char *format, ...);Megjegyzés: Megegyezik az scanf függvénnyel, de a bemenetét a buffer által megadott memóriaterületrõl veszi.
Visszatérési érték: a sikeresen beolvasott és tárolt mezõk száma.
Portabilitás: ANSI C és UNIX kompatibilis.
strcat | string.h |
#include <string.h} char *strcat(char *dest, const char *src);Megjegyzés: Az src sztringet hozzámásolja a dest végéhez.
Visszatérési érték: Az összefûzött sztringre mutató pointer.
Portabilitás: ANSI C és UNIX kompatibilis.
strchr | string.h |
#include <string.h> char *strchr(const char *s, int c);Visszatérési érték: a c karakter s-beli elsõ elõfordulási helyére mutató pointer. Ha c nem található s-ben, NULL értékkel tér vissza.
Portabilitás: ANSI C és UNIX kompatibilis.
strcmp | string.h |
#include <string.h> int strcmp(const char *s1, const char *s2);Visszatérési érték: negatív, ha s1 < s2, nulla, ha s1 == s2 és pozitív, ha s1 > s2.
Portabilitás: ANSI C és UNIX kompatibilis.
strcpy | string.h |
#include <string.h> char *strcpy(char *dest, const char *src);Megjegyzés: Az src sztringet másolja a dest sztringbe a lezáró EOS karakterrel bezárólag.
Visszatérési érték: dest.
Portabilitás: ANSI C és UNIX kompatibilis.
strdup | string.h |
#include <string.h> char *strdup(const char *s);Visszatérési érték: A másolatra mutató pointer, ill. NULL, ha nem sikerült a területfoglalás.
Portabilitás: UNIX kompatibilis.
stricmp | string.h |
#include <string.h> int stricmp(const char *s1, const char *s2);Visszatérési érték: negatív, ha s1 < s2, nulla, ha s1 == s2 és pozitív, ha s1 > s2.
Portabilitás: DOS specifikus.
strlen | string.h |
#include <string.h> size_t strln(const char *s);Visszatérési érték: az s sztring hossza a lezáró EOS karakter nélkül.
Portabilitás: ANSI C és UNIX kompatibilis.
strlwr | string.h |
#include <string.h> char *strlwr(char *s);Visszatérési érték: s.
Portabilitás: DOS specifikus.
strncat | string.h |
#include <string.h> char *strncat(char *dest, const char *src, size_t maxlen);Megjegyzés: A src karakterláncból maximum maxlen karaktert fûz a dest sztring végéhez.
Visszatérési érték: dest.
Portabilitás: ANSI C és UNIX kompatibilis.
strncmp | string.h |
#include <string.h> int strncmp(const char *s1, const char *s2, size_t maxlen);Megjegyzés: Megegyezik strcmp-rel, de mindkét sztringbõl maximum maxlen karaktert vesz figyelembe.
Visszatérési érték: negatív, ha s1 < s2, nulla, ha s1 == s2 és pozitív, ha s1 > s2.
Portabilitás: ANSI C és UNIX kompatibilis.
strncpy | string.h |
#include <stdio.h> char *strncpy(char *dest, const char *src, size_t maxlen);Megjegyzés: A src sztringbõl maximum maxlen karaktert másol át dest-be.
Visszatérési érték: dest.
Portabilitás: ANSI C és UNIX kompatibilis.
strnset | string.h |
#include <string.h> char *strnset(char *s, int c, size_t n);Visszatérési érték: s.
Portabilitás: DOS specifikus.
strrchr | string.h |
#include <string.h> char *strrchr(const char *s, int c);Visszatérési érték: a c karakter s-beli utolsó elõfordulási helyére mutató pointer. Ha c nem található s-ben, NULL értékkel tér vissza.
Portabilitás: ANSI C és UNIX kompatibilis.
strrev | string.h |
#include <string.h> char *strrev(char *s);Visszatérési érték: Pointer a megfordított sztringre.
Portabilitás: DOS specifikus.
strset | string.h |
#include <string.h> char *strset(char *s, int c);Visszatérési érték: s.
Portabilitás: DOS specifikus.
strstr | string.h |
#include <string.h> char *strstr(const char *s1, const char *s2);Visszatérési érték: az s2 részlánc s1-beli elsõ elõfordulási helyére mutató pointer. Ha s1 nem található s2-ben, NULL értékkel tér vissza.
Portabilitás: ANSI C és UNIX kompatibilis.
strupr | string.h |
char *strupr(char *s);Visszatérési érték: s.
Portabilitás: DOS specifikus.
system | stdlib.h, process.h |
int system(const char *command);Megjegyzés: Behívja DOS COMMAND.COM file-t, hogy végrehajtsa a command sztringben megadott DOS parancsot.
Visszatérési érték: nulla, ha sikeres a végrehajtás, különben -1.
Portabilitás: ANSI C és UNIX kompatibilis. A WINDOWS-ban
nem használható.
tan | math.h, complex.h |
Valós verzió: #include <math.h> double tan(double x); |
Komplex verzió: #include <complex.h> double tan(complex x); |
Portabilitás: A függvény valós változata
ANSI C és UNIX kompatibilis, a komplex változata csak C++-ban
használható.
tanh | math.h, complex.h |
Valós verzió: #include <math.h> double tanh(double x); |
Komplex verzió: #include <complex.h> double tanh(complex x); |
Portabilitás: A függvény valós változata
ANSI C és UNIX kompatibilis, a komplex változata csak C++-ban
használható.
tell | io.h |
#include <io.h> long tell(int handle);Visszatérési érték: az aktuális file-pozíció, hiba esetén -1.
Portabilitás: UNIX kompatibilis.
time | time.h |
#include <time.h> time_t time(time_t *timer);Megjegyzés: az 1970. január elseje óta eltelt idõt adja meg másodpercben *timer-ben.
Visszatérési érték: az idõ másodpercekben.
Portabilitás: ANSI C és UNIX kompatibilis.
toascii | ctype.h |
#include <ctype.h> int toascii(int c);Megjegyzés: Az alsó 7 bit kivételével törli c összes bitjét.
Visszatérési érték: a c konvertált értéke.
Portabilitás: UNIX kompatibilis.
tolower | ctype.h |
#include <ctype.h> int tolower(int c);Megjegyzés: Olyan makróként van megvalósítva, amely az argumentumát kétszer értékeli ki.
Visszatérési érték: c konvertált értéke.
Portabilitás: ANSI C és UNIX kompatibilis.
toupper | ctype.h |
#include <ctype.h> int toupper(int c);Megjegyzés: Olyan makróként van megvalósítva, amely az argumentumát kétszer értékeli ki.
Visszatérési érték: c konvertált értéke.
Portabilitás: ANSI C és UNIX kompatibilis.
ungetc | stdio.h |
#include <stdio.h> int ungetc(int c, FILE *stream);Visszatérési érték: A c karakter, hiba esetén EOF.
Portabilitás: ANSI C és UNIX kompatibilis.
write | io.h |
#include <io.h> int write(int handle, void *buf, unsigned len);Megjegyzés: len byte-ot ír a handle-vel azonosított file-ba buf-ból.
Visszatérési érték: A sikeresen kiírt byte-ok száma, hiba esetén -1.
Portabilitás: ANSI C és UNIX kompatibilis.