Sei sulla pagina 1di 4

string.

h - Wikipedia

http://it.wikipedia.org/wiki/String.h

string.h
Da Wikipedia, l'enciclopedia libera.

string.h l'header file della libreria standard del C che contiene definizioni di macro, costanti e dichiarazioni di funzioni e tipi usati non solo nella manipolazione delle stringhe ma anche nella manipolazione della memoria.

Libreria standard del C++

Libreria standard del C assert.h ctype.h

errno.h Le funzioni dichiarate in string.h sono molto popolari float.h ed essendo parte della libreria standard del C, il loro funzionamento garantito su ogni piattaforma che math.h supporta il linguaggio C. Tuttavia, l'esistenza di stdio.h alcuni problemi di sicurezza con queste funzioni, come per esempio problemi di buffer overflow, stdlib.h portano i programmatori a scegliere delle varianti pi string.h sicure ma meno portabili. Inoltre le funzioni in questione lavorano solamente con caratteri ASCII o time.h con un set di caratteri che lo estende in modo compatibile come l'ISO-8859-1; i set di caratteri a pi byte compatibili con l'ASCII, come l'UTF-8, possono funzionare solo a condizione che la lunghezza ("length") della stringa sia interpretata come il numero di byte nella stessa piuttosto che il numero di caratteri Unicode. La gestione di stringhe non compatibili con l'ASCII viene generalmente risolto con l'uso della libreria wchar.h.
Indice 1 Costanti e tipi 2 Funzioni 2.1 Estensioni per ISO C 3 Collegamenti esterni 4 Altri progetti

Costanti e tipi
Nome
NULL

Descrizione Una macro che rappresenta la costante puntatore nullo; in altre parole, una costante che rappresenta un valore che garantito essere

1 di 4

30/06/2010 12:46

string.h - Wikipedia

http://it.wikipedia.org/wiki/String.h

l'indirizzo di una posizione non valida nella memoria.


size_t

Un intero senza segno restituito dell'operatore

sizeof.

Funzioni
Nome
void *memcpy(void *dest, const void *src, size_t n); void *memmove(void *dest, const void *src, size_t n); void *memchr(const void *s, int c, size_t n); int memcmp(const void *s1, const void *s2, size_t n); void *memset(void *s, int c, size_t n); char *strcat(char *dest, const char *src); char *strncat(char *dest, const char *src, size_t n); char *strchr(const char *s, int c); char *strrchr(const char *s, int c); int strcmp(const char *s1, const char *s2); int strncmp(const char *, const char *, size_t); int strcoll(const char *, const char *); char *strcpy(char *s1, const char *s2); char *strncpy(char *s1, const char *s2, size_t n);

Descrizione Copia n bytes tra due aree di memoria che non devono sovrapporsi. Copia n bytes tra due aree di memoria; a differenza di memcpy le aree di memoria possono sovrapporsi. Ritorna un puntatore alla prima occorrenza di c in s, o NULL se c non compare tra i primi n caratteri di s. Confronta i primi n caratteri di s1 con s2 . Colloca c nei primi n caratteri di s. Concatena src alla stringa dest. Concatena al massimo n caratteri src alla stringa dest. Restituisce un puntatore alla prima occorrenza di c in s. Restituisce un puntatore all'ultima occorrenza di c in s. Confronta la stringa s1 con s2 . Confronta al massimo n caratteri della stringa s1 con s2 . Confronta due stringhe utilizzando l'ordine lessicografico stabilito dalla localizzazione utilizzata Copia la stringa s2 nella stringa s1 , incluso il carattere di terminazione \0 . Copia al massimo n caratteri della stringa s2 in s1 .

2 di 4

30/06/2010 12:46

string.h - Wikipedia

http://it.wikipedia.org/wiki/String.h

char *strerror(int n); size_t strlen(const char *s); size_t strspn(const char *s, const char *accept);

Restituisce un puntatore alla stringa che corrisponde all'errore n. Restituisce la lunghezza della stringa s. Restituisce la lunghezza della prima istanza della stringa s di lunghezza massima composta esattamente dai caratteri definiti della stringa accept Restituisce la lunghezza della porzione iniziale della stringa s di lunghezza massima composta esattamente da caratteri diversi da quelli della stringa reject Restituisce la prima occorrenza di un carattere presente nella stringa s che sia uguale ad un qualsiasi carattere presente nella stringa accept Trova la prima occorrenza della stringa needle all'interno della stringa haystack Spezza la stringa s in una serie di stringhe chiamate [token] in corrispondenza dei carattere delimitatore delimiters Trasforma la stringa puntata da src secondo la localizzazione in uso e e copia i primi n caratteri di src nella stringa dest

size_t strcspn(const char *s, const char *reject);

char *strpbrk(const char *s, const char *accept); char *strstr(const char *haystack, const char *needle); char *strtok(char *s, const char *delimiters); size_t strxfrm(char *dest, const char *src, size_t n);

Estensioni per ISO C


Nome
char *strdup(const char *); errno_t strcpy_s(char *restrict s1, rsize_t s1max, const char *restrict s2); void *mempcpy(void *dest, const void *src, size_t n);

Descrizione alloca e duplica una stringa nella memoria variante di strcpy che include dei controlli sulla lunghezza delle stringhe variante di memcpy che ritorna un puntatore al byte successivo all'ultimo byte scritto

Specifica POSIX; originariamente una estensione di BSD ISO/IEC WDTR 24731

GNU

3 di 4

30/06/2010 12:46

string.h - Wikipedia

http://it.wikipedia.org/wiki/String.h

void *memccpy(void *dest, const void *src, int c, size_t n );

copia fino ad n byte fra due aree di memoria non sovrapposte, UNIX 98? fermandosi quando viene trovato il byte c restituisce una rappresentazione in stringa di un numero di errore (si veda errno) (thread-safe; alcune GNU, POSIX differenze semantiche fra la specifica GNU e XSI/POSIX) variante di strcpy che comprende controlli sulla lunghezza della stringa versione thread-safe di strtok originariamente OpenBSD, ora anche FreeBSD, Solaris, OS X POSIX

int *strerror_r(int, char *, size_t);

size_t strlcpy(char *dest, const char *src, size_t n); char *strtok_r(char *, const char *, char **); char *strsignal(int sig);

analogamente a strerror, ritorna una varie distribuzioni rappresentazione in stringa del BSD, Solaris, Linux segnale sig (non thread safe)

Collegamenti esterni
(EN) [1] (http://linux.die.net/man/3/string) string(3) - operazioni su stringhe. Linux man page.

Altri progetti
Wikibooks contiene testi o manuali su String.h Categoria: Libreria standard del C Ultima modifica per la pagina: 17:58, 26 feb 2010. Il testo disponibile secondo la licenza Creative Commons AttribuzioneCondividi allo stesso modo; possono applicarsi condizioni ulteriori. Vedi le condizioni d'uso per i dettagli. Wikipedia un marchio registrato della Wikimedia Foundation, Inc. Politica sulla privacy Informazioni su Wikipedia Avvertenze

4 di 4

30/06/2010 12:46