03. Getsione stringhe - string.h
L'inclusione della libreria standard string.h consente l'utilizzo delle funzioni per la gestione delle stringhe e delle aree di memoria, come l'inizializzazione, la copia ed il confronto. Rimane esclusa l'allocazione (e deallocazione) dinamica della memoria, in quanto queste funzioni sono definite nella libreria standard stdlib.h
Per utilizzare la libreria standard string.h e' necessario includere l'header string.h nel file sorgente:
#include <string.h>
Le funzioni della libreria
memchr(), memcmp(), memcpy(), memmove(), memset()
strcat(), strchr(), strcmp(), strcoll(), strcpy(), strcspn()
strerror(), strlen(), strncat(), strncmp(), strncpy()
strpbrk(), strrchr(), strspn(), strstr(), strtok(), strxfrm()
Descrizione di alcune funzioni di uso comune
strlen()
Prototipo:
size_t strlen(const char *s);
Parametri in ingresso:
const char *s: stringa da analizzare.
Valore di ritorno:
size_t: ritorna il numero di caratteri di s, d esclusione del terminatore '\0'.
Descrizione:
La funzione strlen() calcola la lunghezza della stringa s, (inteso come il numero di caratteri dell'array puntato da s) escluso il terminatore '\0'.
strcmp()
Prototipo:
int strcmp(const char *s1, const char *s2);
Parametri in ingresso:
const char *s1: prima stringa da analizzare.
const char *s2: seconda stringa da analizzare.
Valore di ritorno:
int: ritorna un intero minore, uguale o maggiore di 0 a seconda che s1 sia (o i primi n caratteri siano) rispettivamente minore, uguale o maggiore di s2.
Descrizione:
La funzione strcmp() effettua il confronto fra le due stringhe s1 e s2.
strcpy()
Prototipo
char *strcpy(char *dest, const char *src);
Parametri in ingresso:
const char *dest: area di memoria in cui copiare la stringa
const char *src: stringa da copiare
Valore di ritorno:
char *: ritorna il puntatore alla stringa di destinazione dest.
Descrizione:
La funzione strcpy() copia la stringa src sull'area puntata da dest la quale deve essere sufficientemente ampia ad accogliere tutti i caratteri di src compreso il terminatore '\0'.
strcat()
Prototipo
char *strcat(char *dest, const char *src);
Parametri in ingresso:
const char *dest: area di memoria contenente la stringa da aggiornare
const char *src: stringa da concatenare
Valore di ritorno:
char *: ritorna il puntatore alla stringa di destinazione dest.
Descrizione:
La funzione strcat() concatena la stringa src aggiungendola al termine della stringa dest.
La concatenazione avviene copiando la stringa src a partire dal terminatore della stringa desc. La copia di src è comprensiva del suo terminatore.
L'area di memoria puntata da dest deve essere sufficientemente ampia da accogliere entrambe le stringhe ed il terminatore '\0', quindi dest deve essere dimensionata almeno per contenere strlen(dest)+strlen(src)+1 caratteri.
Un descrizione dettagliata delle funzioni della libreria può essere trovata ai seguenti link:
https://it.wikibooks.org/wiki/C/Appendice/Librerie_standard/string.h
https://it.wikipedia.org/wiki/String.h
https://digilander.libero.it/uzappi/C/librerie/C-string.html
https://code-reference.com/c/string.h
Sito: 7ecnologie
Sezione: 08. C language
Capitolo: 03. Le librerie
Paragrafo: 03. Gestione stringhe - string.h
Indice dei capitoli: 00. Risorse - 01 Ambiente di sviluppo - 02. Introduzione al C - 03. Le librerie - 04. Tutorial - 05. Esercizi svolti - 98. Esercizi
Indice dei paragrafi: 01. Standard I/O - stdio.h - 02. Standard lib - stdlib.h - 03. Gestione stringhe - string.h - 04. Libreria matematica: math.h - 05. Chiamate di sistema - unistd.h