09.01.2015 Views

Langage C - Pages de Michel Deloizy - Free

Langage C - Pages de Michel Deloizy - Free

Langage C - Pages de Michel Deloizy - Free

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

LICENCE SPI-EEA LANGAGE C M. <strong>Deloizy</strong><br />

strtod : convertit une chaîne en une valeur <strong>de</strong> type double.<br />

double strtod(const char *s, char **endptr);<br />

Cette fonction retourne la valeur <strong>de</strong> la chaîne s convertie en une valeur <strong>de</strong> type double. s doit être une suite <strong>de</strong><br />

caractères correspondant au format :<br />

[ws] [sn] [ddd] [.] [ddd] [fmt[sn]ddd]<br />

strtol : convertit la chaîne s en une valeur <strong>de</strong> type long, exprimée dans la base indiquée par radix.<br />

long strtol(const char *s, char **endptr, int radix);<br />

Cette fonction retourne la valeur convertie <strong>de</strong> la chaîne s ou bien 0 en cas d'erreur. s doit être une suite <strong>de</strong> caractères<br />

correspondant au format :<br />

[ws] [sn] [0] [x] [ddd]<br />

strtoul : convertit une chaîne en une valeur <strong>de</strong> type unsigned long, exprimée dans la base indiquée par radix.<br />

unsigned long strtoul(const char *s, char **endptr, int radix);<br />

Cette fonction retourne la valeur convertie <strong>de</strong> la chaîne ou bien 0 en cas d'erreur.<br />

XII.3.b. Générateur <strong>de</strong> nombres aléatoires :<br />

rand : générateur <strong>de</strong> nombres aléatoires.<br />

int rand(void);<br />

Cette fonction retourne un nombre aléatoire compris entre 0 et RAND_MAX. RAND_MAX est défini dans stdlib.h.<br />

srand : initialise le générateur <strong>de</strong> nombres aléatoires.<br />

void srand(unsigned seed);<br />

srand ne retourne pas <strong>de</strong> valeur.<br />

XII.3.c. Fouilles et tris :<br />

bsearch : recherche dichotomique dans un tableau (binary search).<br />

void *bsearch(const void *key, const void *base, size_t *nelem, size_t width,<br />

int (*fcmp)(const void*, const void*));<br />

bsearch retourne l'adresse du premier élément du tableau correspondant à la clé <strong>de</strong> recherche key. Si aucun élément<br />

ne convient, elle retourne 0.<br />

Dans bsearch, la valeur retournée par *fcmp est < 0 si *elem1 < *elem2, nulle si *elem1 est égal à *elem2 et > 0 if<br />

*elem1 > *elem2.<br />

Le tableau doit être trié en ordre croissant.<br />

qsort : effectue un tri rapi<strong>de</strong> (Quicksort).<br />

void qsort(void *base, size_t nelem, size_t width,<br />

int(*fcmp)(const void *, const void *));<br />

Cette fonction effectue le tri <strong>de</strong>s nelem éléments <strong>de</strong> taille width, situés dans le tableau pointé par base.<br />

XII.3.d. Allocation <strong>de</strong> mémoire :<br />

calloc : alloue <strong>de</strong> la mémoire.<br />

void *calloc(size_t nelem, size_t elsize);<br />

Alloue un bloc pour nelem items formés <strong>de</strong> elsize octets ; initialise le bloc avec <strong>de</strong>s zéros. Cette fonction retourne un<br />

pointeur sur le bloc nouvellement alloué ou la valeur NULL lorsqu'il n'y a pas assez <strong>de</strong> place.<br />

malloc : alloue <strong>de</strong> la mémoire.<br />

void *malloc(size_t size);<br />

L'argument size est exprimé en octets. Cette fonction retourne un pointeur sur le bloc nouvellement alloué, ou bien<br />

la valeur NULL quand il n'y a pas assez d'espace pour un nouveau bloc. Si size = 0, elle retourne NULL.<br />

-26-

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!