Zig Academy · Leçon

Formater du texte avec std.fmt

Construisez des chaînes avec des spécificateurs de format.

Leçon 4 sur 413 étapes

Formater du texte avec std.fmt est une leçon Zig Academy gratuite sur CoddyKit. Ceci est la leçon 4 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.

Pourquoi formater

Les programmes réels assemblent des valeurs dans du texte : noms, nombres, prix. Zig gère cela avec std.fmt et son mini-langage de chaînes de format.

Espaces réservés entre accolades

Une chaîne de format utilise {} comme espace réservé. Chaque paire d'accolades récupère l'argument suivant du tuple que vous lui transmettez.

std.debug.print("x = {}\n", .{42});

Les arguments vont dans un tuple

Vous fournissez les arguments sous la forme d'un tuple anonyme, écrit .{ a, b }. Même un argument unique se trouve dans cette enveloppe de tuple.

std.debug.print("{} {}\n", .{1, 2});

Spécificateur de chaîne

Affichez un []const u8 comme du texte avec {s}. Un simple {} tenterait de formater le slice comme une structure composée d'un pointeur et d'une longueur.

std.debug.print("{s}\n", .{"hi"});

Bases numériques

Contrôlez la base d'un entier avec des spécificateurs comme {x} pour l'hexadécimal, {b} pour le binaire et {o} pour l'octal. C'est idéal pour le débogage de bas niveau.

std.debug.print("{x}\n", .{255}); // ff

Largeur et remplissage

Complétez une valeur jusqu'à une largeur fixe à l'aide de deux-points, comme dans {d:5}. Les nombres s'alignent ainsi proprement en colonnes claires et lisibles.

std.debug.print("{d:5}\n", .{7});

Précision des nombres flottants

Limitez le nombre de décimales avec un champ de précision comme {d:.2}. Cela affiche exactement deux chiffres après le point pour un résultat soigné.

std.debug.print("{d:.2}\n", .{3.14159});

Échapper une accolade

Vous avez besoin d'une accolade littérale dans votre sortie ? Doublez-la : {{ affiche une accolade ouvrante et }} en affiche une fermante. Cela évite toute confusion avec les espaces réservés.

std.debug.print("{{x}}\n", .{});

Construire une chaîne

Pour formater en mémoire plutôt que vers stdout, appelez std.fmt.allocPrint. La fonction alloue et renvoie un nouveau []u8 contenant votre texte.

const s = try std.fmt.allocPrint(
    alloc, "id={}", .{id});

Libérer ce que vous allouez

Comme allocPrint utilise un allocateur, le résultat vous appartient et vous devez le libérer. Un defer placé juste après l’appel permet de garder le nettoyage bien organisé.

defer alloc.free(s);

Tampons de taille fixe avec bufPrint

Si vous ne voulez absolument pas utiliser le tas, écrivez dans votre propre tableau avec std.fmt.bufPrint. Cette fonction renvoie la tranche effectivement utilisée, remplie avec les données.

var buf: [16]u8 = undefined;
const out = try std.fmt.bufPrint(&buf, "{}", .{9});

Vérification rapide

Vous affichez une valeur []const u8 et vous voulez qu’elle apparaisse comme du texte lisible.

Récapitulatif

Vous avez formaté du texte avec std.fmt : les paramètres {} et {s}, la base, la largeur et la précision, ainsi que allocPrint et bufPrint pour les chaînes. 🎨

Gratuit pour commencer

Apprends Zig avec un tuteur IA — gratuit

Écris et exécute du vrai code dans ton navigateur, obtiens de l'aide instantanée d'un tuteur IA disponible 24h/24, et reprends là où tu t'es arrêté sur le web ou dans l'app.

Cours
30
Leçons
120

Questions Fréquemment Posées

La leçon « Formater du texte avec std.fmt » est-elle gratuite ?

Oui — le texte complet de « Formater du texte avec std.fmt » 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 « Formater du texte avec std.fmt » ?

Construisez des chaînes avec des spécificateurs de format. 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 4 sur 4.

Combien de temps prend la leçon « Formater du texte avec std.fmt » ?

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

  1. Les chaînes sont des []const u8
  2. Littéraux de chaîne et séquences d'échappement
  3. Comparer et rechercher des octets
  4. Formater du texte avec std.fmt
← Retour à Zig Academy