Skip to content
Snippets Groups Projects
Select Git revision
  • 488a600edd0e669076f7570c0913d1777096bb10
  • master default protected
  • pk
  • high-order-functions
4 results

strings.md

Blame
  • Orestis's avatar
    orestis.malaspin authored
    54e9f5a9
    History
    title: "Chaînes de caractères"
    date: "2023-11-02"

    Rappel: la chaîne de caractères

    Existe-t-il un type string{.C} en C{.C}?

    . . .

    • Non.

    . . .

    Qu'est-ce qu'une chaîne de caractères en C?

    . . .

    • Un tableau de char{.C} (entier signé 8 bits, le code ASCII de chaque caractère)

    . . .

    • qui se termine lorsqu'on rencontre le caractère \0{.C} (qui est le 0 du code ASCII).

    Exemple

    char *str = "HELLO !"; // statique

    Est représenté par

    H E L L O ! \0
    72 69 76 76 79 32 33 0

    Syntaxes alternatives

    char name[10];
    name[0] = 'P';  // = 70;
    name[1] = 'a';  // = 97;
    name[2] = 'u';  // = 117;
    name[3] = 'l';  // = 108;
    name[4] = '\0'; // = 0;
    char name[] = {'P', 'a', 'u', 'l', '\0'};

    Fonctions

    \footnotesize

    • Il existe une grande quantités de fonction pour la manipulation de chaînes de caractères dans string.h.
    • Comment les trouver?

    . . .

    $ man 3 string
    • Fonctions principales:

      size_t strlen(char *str);
      char *strcpy(char *dest, const char *src);
      char *strncpy(char *dest, const char *src, size_t len);
      int strncmp(char *str1, char *str2, size_t len);
      int strcmp(char *str1, char *str2);