[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico] [home] [volume] [parte]


Capitolo 628.   C: «stdlib.h»

Funzione Descrizione
int atoi (const char *s);
long int atol (const char *s);
long long int atoll (const char *s);
double atof (const char *s);
Converte la stringa fornita come argomento in un numero intero o in virgola mobile, come si vede dal modello sintattico.
float strtof (const char *restrict s,
              char **restrict p);
double strtod (const char *restrict s,
               char **restrict p);
long double strtold
    (const char *restrict s,
     char **restrict p);
Converte la stringa fornita come primo argomento in un numero in virgola mobile, come si vede dal modello sintattico. La conversione avviene fino a dove è possibile riconoscere caratteri che compongono un valore valido; se il secondo argomento è un puntatore a un puntatore valido (un puntatore a un'area di memoria che può contenere a sua volta un puntatore dal tipo char), al suo interno viene memorizzato l'indirizzo finale della scansione, a partire dal quale si trovano caratteri non decifrabili, oppure dove si trova il carattere nullo di terminazione della stringa.
long int strtol (const char *restrict s,
                 char **restrict p,
                 int base);
long long int strtoll
    (const char *restrict s,
     char **restrict p,
     int base);
unsigned long int strtoul
    (const char *restrict s,
     char **restrict p,
     int base);
unsigned long long int strtoull
    (const char *restrict s,
     char **restrict p,
     int base);
Converte la stringa fornita come primo argomento in un numero intero, come si vede dal modello sintattico, interpretando la stringa come numero espresso nella base rappresentata dal parametro base. La conversione avviene fino a dove è possibile riconoscere caratteri che compongono un valore valido; se il secondo argomento è un puntatore a un puntatore valido (un puntatore a un'area di memoria che può contenere a sua volta un puntatore dal tipo char), al suo interno viene memorizzato l'indirizzo finale della scansione, a partire dal quale si trovano caratteri non decifrabili, oppure dove si trova il carattere nullo di terminazione della stringa.
void srand (unsigned int seed);
Modifica il seme per la generazione di numeri casuali attraverso la funzione rand().
int rand (void);
Restituisce il numero casuale successivo.
void *malloc (size_t size);
Richiede l'allocazione di memoria di almeno size byte, restituendo il puntatore all'inizio della stessa se l'operazione ha successo, oppure il puntatore nullo se l'allocazione fallisce.
void *calloc (size_t nmemb, size_t size);
Richiede l'allocazione di memoria di almeno nmemb elementi da size byte ciascuno, restituendo il puntatore all'inizio della stessa se l'operazione ha successo, oppure il puntatore nullo se l'allocazione fallisce.
void *realloc (void *ptr, size_t size);
Richiede la riallocazione della memoria già allocata precedentemente a partire dall'indirizzo ptr, in modo da avere almeno size byte, recuperando il contenuto precedente, per ciò che è possibile. La riallocazione può avvenire in corrispondenza di un indirizzo differente da quello originale, ma può fallire, restituendo così solo il puntatore nullo.
void free (void *ptr);
Libera la memoria allocata precedente a partire dall'indirizzo ptr.
int atexit (void (*func) (void));
Accumula in un elenco il puntatore a una funzione che non richiede argomenti, da eseguire, assieme alle altre dell'elenco, quando viene chiamata la funzione exit(). La funzione atexit() restituisce un valore numerico da intendere come Vero o Falso, a indicare se l'operazione ha avuto successo o meno.
void exit (int status);
Conclude il funzionamento del programma, ma prima esegue le funzioni accumulate con l'ausilio di atexit(), quindi chiude i file e infine passa il valore ricevuto come argomento in modo tale che sia restituito dal programma stesso.
void _Exit (int status);
Conclude il funzionamento del programma in modo brutale, senza occuparsi di nulla, a parte il far sì che il programma restituisca il valore indicato come argomento.
void abort (void);
Produce l'emissione del segnale SIGABRT (abort) che porta alla morte del processo elaborativo.
char *getenv (const char *name);
Restituisce il puntatore all'inizio della stringa che rappresenta il contenuto della variabile di ambiente indicata per nome, come argomento.
int system (const char *string);
Esegue il comando indicato come argomento, attraverso il sistema operativo, restituendo il valore di uscita del comando stesso.
void qsort (void *base,
            size_t nmemb,
            size_t size,
            int (*compar)
                (const void *,
                 const void *));
Riordina un array che inizia dall'indirizzo base, essendo composto da size elementi da nmemb byte ognuno, utilizzando per il confronto la funzione compar.
void *bsearch (const void *key,
               const void *base,
               size_t nmemb,
               size_t size,
               int (*compar)
                   (const void *,
                    const void *));
Scandisce un array che inizia dall'indirizzo base, essendo composto da size elementi da nmemb byte ognuno, il quale risulta già ordinato secondo la funzione compar, alla ricerca della corrispondenza con il valore *key, la cui dimensione deve essere sempre di nmemb byte.
int abs (int j);
long int labs (long int j);
long long int llabs (long long int j);
Restituisce il valore assoluto di j.
div_t div (int numeratore,
            int denominatore);
ldiv_t ldiv (long int numeratore,
             long int denominatore);
lldiv_t lldiv (long long int numeratore,
               long long int denominatore);
Restituisce il risultato della divisione dei due argomenti, in una struttura contenente il risultato intero e il resto della divisione.
int mblen (const char *s, size_t n);
Restituisce la lunghezza in byte del primo carattere multibyte contenuto nella stringa fornita come primo argomento. La scansione termina comunque se raggiunge la quantità di byte indicata dal secondo argomento. Se la stringa contiene una sequenza multibyte errata o incompleta, il valore restituito è -1. Se al posto della stringa multibyte si fornisce il puntatore nullo, la funzione restituisce il valore uno o zero, a seconda che sia prevista o meno una codifica multibyte con una gestione dello stato (shift state).
int mbtowc (wchar_t *restrict pwc,
            const char *restrict s,
            size_t n);
Converte il carattere multibyte contenuto nella stringa s, per un massimo di n byte, nel carattere esteso a cui punta pwc, restituendo la quantità di byte utilizzati dalla stringa di origine, oppure -1 se si presentano errori. Se al posto della stringa s si mette il puntatore nullo, si ottiene un valore pari a uno o zero, a seconda che sia prevista o meno una codifica multibyte con una gestione dello stato (shift state).
int wctomb (char *s, wchar_t wc;
Converte il carattere esteso wc in una sequenza multibyte che va a essere contenuta nella stringa s, restituendo la quantità di byte prodotti, oppure -1 se si presentano errori. Se al posto della stringa s si mette il puntatore nullo, si ottiene un valore pari a uno o zero, a seconda che sia prevista o meno una codifica multibyte con una gestione dello stato (shift state).
size_t mbstowcs (wchar_t *restrict pwcs,
                 const char *restrict s,
                 size_t n);
Converte la stringa multibyte s nella stringa estesa pwcs, producendo al massimo n caratteri estesi nella destinazione (incluso il carattere nullo di terminazione). La funzione restituisce la quantità di caratteri estesi copiati nella destinazione, escludendo il carattere nullo di terminazione, oppure l'equivalente di -1 in caso di errori. Se al posto della destinazione viene messo il puntatore nullo, l'operazione viene simulata ignorando il valore di n e senza memorizzare il risultato; pertanto è utile per contare lo spazio necessario nella destinazione.
size_t wcstombs (char *restrict s,
                 wchar_t *restrict pwcs,
                 size_t n);
Converte la stringa estesa pwcs nella stringa multibyte s, producendo al massimo n byte nella destinazione (incluso il carattere nullo di terminazione). La funzione restituisce la quantità di byte copiati nella destinazione, escludendo il carattere nullo di terminazione, oppure l'equivalente di -1 in caso di errori. Se al posto della destinazione viene messo il puntatore nullo, l'operazione viene simulata ignorando il valore di n e senza memorizzare il risultato; pertanto è utile per contare lo spazio necessario nella destinazione.

Appunti di informatica libera 2008 --- Copyright © 2000-2008 Daniele Giacomini -- <appunti2 (ad) gmail·com>


Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome c_171_stdlib_h_187_1.htm

[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico] [home]

Valid ISO-HTML!

CSS validator!

Gjlg Metamotore e Web Directory