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:
Funzione | Descrizione |
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: