C Programlama Dili standart kütüphanesindeki stdlib.h başlık dosyasında, dinamik bellek yönetimi, rasgele sayı üretimi, çevre ile iletişim, tamsayı aritmetiği, arama, sıralama ve dönüştürme gibi çeşitli genel amaçlı fonksiyonlar tanımlanmıştır.
Fonksiyonlar
| Fonksiyon adı | Açıklama |
|---|---|
| _Exit (C99) |
void _Exit(int exitcode); Kaynakları tamamen temizlemeden programı normal bir şekilde sonlandırır. |
| abort |
void abort(void); Kaynakları tamamen temizlemeden programı anormal bir şekilde sonlandırır. |
|
abs labs llabs (C99) |
int abs(int n); Kendisine geçirilen parametrenin mutlak değerini alır. |
| aligned_alloc (C11) |
void *aligned_alloc(size_t alignment, size_t size); Bellek başlangıç adresi değeri ilk parametre değerinin katı olan ve ikinci parametre değeri kadar büyüklükte bellek tahsis eder. İkinci parametre değeri ilk parametre değerinin katı olmalıdır. |
| at_quick_exit (C11) |
int at_quick_exit(void (*func) (void)); Hızlı çıkışta çalıştırılacak fonksiyonu belirler. |
| atexit |
int atexit(void (*func) (void)); Normal çıkışta çalıştırılacak fonksiyonu belirler. |
| atof |
double atof(const char *str); Bir karakter dizisini float bir değere çevirir. |
|
atoi atol atoll (C99) |
int atoi(const char *str); Bir karakter dizisini int bir değere çevirir. |
| bsearch |
void* bsearch(const void *key, const void *base, size_t num, size_t size, int (*compar)(const void*, const void*)); Bir dizi içinde verilen bir değeri arar. |
| calloc |
void* calloc(size_t num, size_t size); Dinamik bellek tahsisi yapar ve bellek içeriğini sıfırlar. |
|
div ldiv lldiv (C99) |
div_t div(int x, int y); Kendisine geçirilen parametre değerleri arasında yaptığı bölme işleminin sonucunu ve kalanını içeren bir yapı (div_t) geri döndürür. |
| exit |
void exit(int exitcode); Kaynakları tamamen temizleyerek programı normal bir şekilde sonlandırır. |
| free |
void free(void *ptr); Daha önce tahsis edilen belleği boşaltır. |
|
getenv getenv_s (C11) |
char* getenv(const char *name); Ortam değişkenlerinin içeriğini okur. |
| malloc |
void* malloc(size_t size); Dinamik bellek tahsisi yapar. |
| mblen |
int mblen(const char *str, size_t n); İlk parametre ile başlangıç adresi gösterilen çok byte'lı bir karakter dizisinin ilk karakterinin uzunluğunu hesaplar. |
|
mbstowcs mbstowcs_s (C11) |
size_t mbstowcs(wchar_t *dest, const char *src, size_t len); İkinci parametre ile verilen çoklu byte karakter dizisini geniş karakter dizisine çevirerek ilk parametredeki işaretçi ile gösterilen bellek adresine atar. |
| mbtowc |
int mbtowc(wchar_t *dest, const char *src, size_t len); İkinci parametre ile verilen çoklu byte karakteri geniş karaktere çevirerek ilk parametredeki işaretçi ile gösterilen bellek adresine atar. |
| qsort |
void qsort(void *base, size_t num, size_t size, int (*compar)(const void*, const void*)); Bir dizinin elemanlarını sıralar. |
| quick_exit (C11) |
void quick_exit(int exitcode); Kaynakları tamamen temizlemeden programı normal bir şekilde sonlandırır. |
| rand |
int rand(void); 0 ile RAND_MAX değerleri arasında rasgele bir sayı üretir. |
| realloc |
void* realloc(void *ptr, size_t size); İlk parametredeki işaretçi ile gösterilen bellek adresinde ikinci parametre değeri kadar bellek tahsis eder. |
| srand |
void srand(unsigned int seed); Rasgele sayı üreticisini başlatır. |
|
strtod strtof (C99) strtold (C99) |
double strtod(const char *str, char **strend); İlk parametre ile verilen karakter dizisini float/double/long double bir değere çevirerek geri döndürür. |
|
strtol strtoll (C99) |
long int strtol(const char *str, char **strend, int base); İlk parametre ile verilen karakter dizisini long/long long bir değere çevirerek geri döndürür. |
|
strtoul strtoull (C99) |
unsigned long int strtoul(const char *str, char **strend, int base); İlk parametre ile verilen karakter dizisini unsigned long/unsigned long long bir değere çevirerek geri döndürür. |
| system |
int system(const char *command); Bilgisayar ortamının komut işlemcisini parametre değeri ile çağırarak, sistemin bu komutu uygulamasını sağlar. |
|
wcstombs wcstombs_s (C11) |
size_t wcstombs(char *dest, const wchar_t *src, size_t len); İkinci parametre ile verilen geniş karakter dizisini çoklu byte karakter dizisine çevirerek ilk parametredeki işaretçi ile gösterilen bellek adresine atar. |
|
wctomb wctomb_s (C11) |
int wctomb(char *dest, wchar_t src); İkinci parametre ile verilen geniş karakteri çoklu byte karaktere çevirerek ilk parametredeki işaretçi ile gösterilen bellek adresine atar. |
Veriler
| Veri türü adı | Değer | Açıklama |
|---|---|---|
| div_t | typedef struct { int quot, rem; } | Div() fonksiyonu tarafından geri döndürülen yapı veri türünü gösterir. |
| ldiv_t | typedef struct { long quot, rem; } ldiv_t; | Ldiv() fonksiyonu tarafından geri döndürülen yapı veri türünü gösterir. |
| lldiv_t (C11) | typedef struct { long long quot, rem; } lldiv_t; | Lldiv() fonksiyonu tarafından geri döndürülen yapı veri türünü gösterir. |
| size_t | - | Sizeof işlemcisi tarafından geri döndürülen unsigned int bir veri türüdür. |
| wchar_t | - | Geniş bir karakter sabitinin boyutunu bir tamsayı olarak gösterir. |
Makro sabitler
| Sabit adı | Değer | Açıklama |
|---|---|---|
| EXIT_FAILURE | 1 | Hata çıkış kodu. |
| EXIT_SUCCESS | 0 | Başarı çıkış kodu. |
| MB_CUR_MAX | 1 (Mingw) | Çoklu byte karakter boyutu. |
| NULL | - | Null işaretçi. |
| RAND_MAX | 0x7FFF | Rand() fonksiyonu tarafından geri döndürülen maksimum değer. |