string

2025-11-26 06:59:35 +01:00
parent 8def55a1a0
commit 7d313e064c
3 changed files with 24 additions and 11 deletions

@@ -88,6 +88,13 @@ La bibliothèque standard ***stdlib.h*** (standard library) fournit des fonction
La bibliothèque ***string.h*** fournit des fonctions pour manipuler les chaînes de caractères et les blocs mémoire.
- `strlen()` : Calculer la longueur de la chaîne (sans compter le caractère nul).
- `strcpy()` : Copier une chaîne dans une autre (=).
- `strcmp()` : Comparer deux chaînes (==).
- `strcat()` : Concaténer deux chaînes (+).
[VOIR](string) en détail le fonctionnement des chaines de caractères.
### ctype
La bibliothèque ***ctype.h*** fournit des fonctions pour tester et manipuler des caractères.

@@ -7,11 +7,18 @@ Les tableaux étant aussi des pointeurs, les chaînes de caractères sont des po
### Tableau de caractères
Une chaîne de caractères est déclarée comme un tableau de type char, où chaque élément représente un caractère, et la dernière position du tableau contient le caractère nul (\0).
Une chaîne de caractères est déclarée comme un tableau de type char, où chaque élément représente un caractère, et la dernière position de la chaine contient le caractère nul (\0).
```c
char nom[10] = "Alice"; // Déclare un tableau de 10 caractères
```
Position|0|1|2|3|4|5|6|7|8|9|
---|---|---|---|---|---|---|---|---|---|---|
caractère |A|l|i|c|e
code ascii|65|108|105|99|101|0|xx|xx|xx|xx
#### Accès aux caractères
Les caractères individuels d'une chaîne peuvent être accédés via leur index, comme pour tout tableau :
@@ -24,10 +31,10 @@ printf("%c", nom[0]); // Affiche 'A'
La bibliothèque standard de C (<string.h>) fournit plusieurs fonctions pour manipuler les chaînes de caractères, telles que :
- strlen() : Calculer la longueur de la chaîne (sans compter le caractère nul).
- strcpy() : Copier une chaîne dans une autre (=).
- strcmp() : Comparer deux chaînes (==).
- strcat() : Concaténer deux chaînes (+).
- `strlen()` : Calculer la longueur de la chaîne (sans compter le caractère nul).
- `strcpy()` : Copier une chaîne dans une autre (=).
- `strcmp()` : Comparer deux chaînes (==).
- `strcat()` : Concaténer deux chaînes (+).
> [!WARNING]
> NE JAMAIS faire d'opération sur les chaines de caractère = + ==. Il faut utiliser les fonctions prévues pour la manipulation des chaînes.
@@ -83,11 +90,10 @@ int main (int argc , char *argv[])
A la fin de la saisie, le caractère '\0' est ajouté automatiquement.
> [!WARNING]
> ATTENTION : scanf ne permet pas la saisie d'une chaîne comportant des espaces.
⇒ Les caractères saisis à partir de l'espace ne sont pas pris en compte mais restent rangés dans le tampon
d'entrée.
{class=warning}
### Le tampon d'entrée ?

@@ -12,10 +12,10 @@ typedef struct {
```c
typedef struct {
int compte_id; // lien avec le compte
char type; // 'D' ou 'R'
double montant;
char date[20]; // horodatage ou saisie manuelle
int compte_id; // lien avec le compte
char type; // 'D' ou 'R'
double montant;
char date[20]; // horodatage ou saisie manuelle
} Operation;
```