Başlangıç > C, Programlama > stdlib.h

stdlib.h


Bu dosyada, size_t, wchar_t, div_t (div’den döndürülen yapı) ve ldiv_t (ldiv’den döndürülen yapı) tipleri ve NULL, RAND_MAX (rand fonksiyonundan döndürülen en büyük değer), EXIT_SUCCESS (programın başarılı exit kodu) ve EXIT_FAILURE (programın başarısız exit kodu) değişmezleri için tanımlarla MB_CUR_MAX (şu anki yöreye göre bir çokbaytlı karakter içindeki en büyük bayt sayısı) ve errno değişkenleri için bildirimler bulunmaktadır. Fonksiyon prototipleri: 

void                    abort(void)
int                     abs(int)
int                     atexit(void (*)(void))
double                  atof(const char *)
int                     atoi(const char *)
long                    atol(const char *)
void *                  bsearch(const void *, const void *, size_t,
                        size_t, int (*)(const void *, const void *))
void *                  calloc(size_t, size_t)
div_t                   div(int, int)
void                    exit(int)
void                    free(void *)
char *                  getenv(const char *)
long                    labs(long)
ldiv_t                  ldiv(long, long)
void *                  malloc(size_t)
int                     mblen(const char *, size_t)
size_t                  mbstowcs(wchar_t *, const char *, size_t)
int                     mbtowc(wchar_t *, const char *, size_t)
void                    perror(const char *)
void                    qsort(void *, size_t, size_t,
                        int (*)(const void *, const void *))
int                     rand(void)
void *                  realloc(void *, size_t)
void                    srand(unsigned int)
double                  strtod(const char *, char **)
long                    strtol(const char *, char **, int)
unsigned long           strtoul(const char *, char **, int)
int                     system(const char *)
size_t                  wcstombs(char *, const wchar_t *, size_t)
int                     wctomb(char *, wchar_t)

Eğer tolower makrosu #define ile tanımlanmamışsa, 

int                     tolower(int)

Eğer toupper makrosu #define ile tanımlanmamışsa, 

int                     toupper(int)
                                            kaynak

Bazı fonksiyonların işlevleri aşağıda verilmiştir.

atof(const char * nPtr)

nPtr stringini double’a dönüştürür.

atof(99.0) ile  sonuç 99.00 olur

 atoi(const char *nPtr)

nPtr stringini int’e dönüştürür.

 atol(const char * nPtr )

nPtr stringini long int’e dönüştürür.

calloc(size_t, size_t)

Hafızada veri için yer açar ve açılan byte’lara sıfır değerini atar.

ptr = calloc(5, sizeof(int)); // hafızada 5 elemanlık int için yer açılmıştır…

malloc(size_t)

Veri tipinin boyutu kadar dinamik hafızadan yer ayırmak için kullanılır.

free(void *)

malloc() vb ile dinamik hafızadan ayrılan yeri, serbest brakmak için kullanılır.free ile işe biten hafızayı serbest bırakırız.

int *p;

p= (int*) malloc( sizeof(int) );

free(p);

rand(void)

Rasgele sayı belirlemek için kullanılan fonksiyondur.

int x=rand()%49; //49 dan küçük rasgele sayılar üretilir.

 realloc(void *, size_t)

Daha öncemalloc ile dinamik hafızadan ayrılan yerin boyutunu değiştirmek üzere kullanılır.

ptr= (int*) malloc( sizeof(int) );

realloc(ptr,0);//böylece free(ptr) ile aynı işlemi yapmış oldu

 srand(unsigned int)

srand(tohum) fonksiyonu, rand() tarafindan uretilecek sayi icin bir başlangic noktasi ayarlar.Bu değer istediğiniz herhangi bir değer olabilir.Böylece srand da aynı değeri verdiğinizde rand fonksiyonu, aynı sonucu üretecektir.

srand(besleme);

strtod(const char *, char **)

Stringi double’a dönüştürü. İki değer alır, biri stringin kendisi diğeri de double’a dönüştürülen stringin kalan kısmını tutmak için ikinci bir stringtir.

const char * string=”51.2% kabul edildi”;

char* stringPtr;

d=strtod(string,stringPtr);

d değeri 51.2 olurken, string Ptr    %kabul edildi olur.Cunku double değerden sonraki ilk konumu saklar.

strtol(const char * nPtr, char **endPtr, int base)

nPtr stringini long’a dönüştürür.

x=strtol(string, &kalanPtr,0);

kalanPtr’de stringin longa dönüşmesinden sonra kalan string saklanır.base kısmında ise hangi tabanda dönüştürüleceği yazılır.Sıfır tabanında, sekizlik ya da onaltılık tabanda gibi.

strtoul(const char * nPtr, char ** endPtr, int base)

nPtr stringini unsigned long’a dönüştürür.

x=strtoul(string, &kalanPtr,0);

kalanPtr’de stringin unsigned  longa dönüşmesinden sonra kalan string saklanır.base kısmında ise hangi tabanda dönüştürüleceği yazılır.Sıfır tabanında, sekizlik ya da onaltılık tabanda gibi.

Reklamlar
  1. Henüz yorum yapılmamış.
  1. Eylül 4, 2010, 9:41 pm

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Connecting to %s

%d blogcu bunu beğendi: