String.c
De wiki-prog
Révision de 24 octobre 2016 à 16:35 par Slashvar (discuter | contributions) (→Taille d'une chaîne de caractères)
Taille d'une chaîne de caractères
voir strlen(3)
/* classique avec for */ size_t strlen(char *s) { size_t i; for (i = 0; s[i]; ++i) continue; return i; }
/* From FreeBSD sources */ size_t strlen(const char *str) { const char *s; for (s = str; *s; ++s); return (s - str); }
Copie d'une chaîne de caractères
voir strncpy(3)
/* classique à coup de for */ char *strncpy(char *to, char *from, size_t n) { size_t i; for (i = 0; from[i] && i < n; ++i) to[i] = from[i]; for (; i < n; ++i) to[i] = 0; return to; }