La libreria string.h in C

La libreria string.h del linguaggio C permette di includere nel proprio programma diverse funzioni molto utili per effettuare particolari operazioni sulle stringhe, ma anche sulla memoria. Nello specifico la libreria string.h mette a disposizione diverse funzioni per copiare, concatenare, comparare, ricercare e molto altro.

Le funzioni che si trovano all’interno della libreria string.h sono molto popolari, soprattutto perchè il loro corretto funzionamento è garantito su ogni piattaforma che supporta il linguaggio C. Ciononostante, alcune funzioni presentano dei rischi legati alla sicurezza se non gestiti in maniera corretta, come ad esempio buffer overflow.

Nella seguente tabella vengono riportate le principali funzioni presenti all’interno della libreria string.h, molte di quelle presenti verranno spiegate nelle pagine successive:

FunzioneDescrizione
char *strcat(char *dest, const char *src);Concatena la stringa src alla stringa dest
char *strncat(char *dest, const char *src, size_t n);Concatena n caratteri della stringa src alla stringa dest
char *strchr(const char *str, int c);Restituisce il puntatore alla prima occorrenza del carattere c all’interno della stringa str
char *strrchr(const char *str, int c);Restituisce il puntatore all’ultima occorrenza del carattere c all’interno della stringa str
int strcmp(const char *str1, const char *str2);Confronta la stringa str1 con la stringa str2
int strncmp(const char *str1, const char *str2, size_t n);Confronta al massimo i primi n caratteri della stringa str1 con la stringa str2
int strcoll(const char *str1, const char *str2);Confronta le due stringhe str1 e str2 utilizzando l’ordine lessicografico
char *strcpy(char *dest, const char *src);Copia la stringa src nella stringa dest
char *strncpy(char *dest, const char *src, size_t n);Copia al massimo n caratteri della stringa src nella stringa dest
size_t strlen(const char *str);Restituisce la lunghezza della stringa str
size_t strspn(const char *str1, const char *str2);Restituisce la lunghezza iniziale della stringa str1 che consiste interamente da caratteri presenti nella stringa str2
size_t strcspn(const char *str1, const char *str2);Restituisce la lunghezza iniziale della stringa str1 che consiste interamente da caratteri non presenti nella stringa str2
char *strpbrk(const char *str1, const char *str2);Restituisce il puntatore al primo carattere nella stringa str1 che corrisponde a qualsiasi carattere presente nella stringa str2
char *strstr(const char *haystack, const char *needle);Trova la prima occorrenza della stringa needle all’interno della stringa haystack
char *strtok(char *str, const char *delimiters);Spezza la stringa str in una serie di token separati dal carattere delimiters

Indice pagine linguaggio C: