Les chaînes sont des []const u8
Découvrez pourquoi les chaînes Zig sont des tranches d'octets.
Les chaînes sont des []const u8 est une leçon Zig Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Zig Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Zig Academy comprend 4 leçons au total.
Aucun type chaîne
Zig ne possède pas de type chaîne dédié. Un fragment de texte est simplement un slice d'octets ; vous réutilisez donc les mêmes outils que ceux que vous connaissez déjà pour les tableaux. 📦
Ce ne sont que des octets
Une chaîne Zig est de type []const u8 : une fenêtre en lecture seule sur une suite d'octets de 8 bits. Chaque octet contient un nombre compris entre 0 et 255.
const greeting: []const u8 = "hello";Pourquoi const
Les littéraux de chaîne résident dans une mémoire en lecture seule ; leur type est donc []const u8. const signifie que vous pouvez lire les octets, mais jamais écrire à travers ce slice.
u8 représente un octet
Le type d'élément u8 est un entier non signé sur 8 bits. Traiter le texte comme des u8 rend Zig explicite : une chaîne est constituée d'octets bruts, pas de caractères magiques.
Un slice possède une longueur
Un slice contient à la fois un pointeur et une longueur ; la chaîne connaît donc sa propre taille. Vous n'avez jamais besoin d'une variable de longueur distincte ni d'un terminateur.
const name = "Zig";
// name.len == 3UTF-8 par convention
Les fichiers source Zig sont en UTF-8 ; les littéraux stockent donc le texte sous forme d'octets UTF-8. Un emoji ou une lettre accentuée peut occuper plusieurs octets, et non un seul.
La longueur compte les octets
Puisque le texte est constitué d'octets, .len renvoie le nombre d'octets, et non le nombre de caractères. Pour de l'ASCII simple, les deux nombres correspondent exactement.
const s = "abc";
std.debug.print("{}", .{s.len}); // 3L'index renvoie un octet
Indexer une chaîne renvoie une seule valeur d'octet u8, et non un objet caractère. En ASCII, cet octet représente le code de la lettre.
const s = "AB";
const first = s[0]; // 65, the AAucun terminateur nul nécessaire
Contrairement au C, un slice Zig ne dépend pas d'un octet zéro final pour marquer sa fin. La longueur stockée indique déjà au code où le texte s'arrête.
Afficher une chaîne
Vous affichez du texte avec le spécificateur de format {s}, qui indique à Zig de rendre les octets comme une chaîne plutôt que comme des nombres.
std.debug.print("{s}\n", .{"hello"});Les octets mutables nécessitent [] u8
Supprimez const pour obtenir un slice []u8 accessible en écriture. Vous pouvez alors modifier les octets sur place, à condition qu'ils se trouvent dans une mémoire dont vous êtes propriétaire.
Vérification rapide
Réfléchissez au type réel qui se cache derrière un littéral de chaîne Zig.
Récapitulatif
Vous avez appris que le texte Zig est simplement []const u8 : des octets en lecture seule accompagnés d'une longueur, en UTF-8 par convention, indexés et mesurés en octets. 🎯
Questions Fréquemment Posées
La leçon « Les chaînes sont des []const u8 » est-elle gratuite ?
Oui — le texte complet de « Les chaînes sont des []const u8 » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Zig Academy, passe à CoddyKit PRO. Le cours Zig Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Les chaînes sont des []const u8 » ?
Découvrez pourquoi les chaînes Zig sont des tranches d'octets. Tu pratiques Zig Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Zig Academy ?
Aucune expérience préalable n'est requise. Zig Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « Les chaînes sont des []const u8 » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Zig Academy ?
Oui. Chaque leçon Zig Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Les chaînes sont des []const u8
- Littéraux de chaîne et séquences d'échappement
- Comparer et rechercher des octets
- Formater du texte avec std.fmt