Memformat Teks dengan std.fmt
Bangun string dengan penentu format.
Memformat Teks dengan std.fmt adalah pelajaran Zig Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Zig Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Zig Academy mencakup 4 pelajaran total.
Mengapa Melakukan Pemformatan
Program nyata menyisipkan nilai ke dalam teks: nama, jumlah, harga. Zig menangani hal ini melalui std.fmt dan bahasa mini string formatnya.
Placeholder di dalam Kurung Kurawal
String format menggunakan {} sebagai placeholder. Setiap pasangan kurung kurawal mengambil argumen berikutnya dari tuple yang Anda teruskan bersamanya.
std.debug.print("x = {}\n", .{42});Argumen Dimasukkan ke Tuple
Anda memberikan argumen sebagai tuple anonim, yang ditulis .{ a, b }. Bahkan satu argumen pun berada di dalam pembungkus tuple tersebut.
std.debug.print("{} {}\n", .{1, 2});Penentu String
Cetak []const u8 sebagai teks dengan {s}. {} biasa akan mencoba memformat slice sebagai struct yang terdiri dari pointer dan panjang.
std.debug.print("{s}\n", .{"hi"});Basis Bilangan
Atur basis bilangan bulat dengan penentu seperti {x} untuk heksadesimal, {b} untuk biner, dan {o} untuk oktal. Sangat berguna untuk penelusuran kesalahan tingkat rendah.
std.debug.print("{x}\n", .{255}); // ffLebar dan Padding
Tambahkan padding pada nilai hingga lebar tertentu menggunakan titik dua, seperti pada {d:5}. Ini merapikan susunan angka menjadi kolom yang bersih dan mudah dibaca.
std.debug.print("{d:5}\n", .{7});Presisi Bilangan Pecahan
Batasi jumlah tempat desimal dengan bidang presisi seperti {d:.2}. Ini mencetak tepat dua digit setelah titik untuk hasil yang rapi.
std.debug.print("{d:.2}\n", .{3.14159});Melakukan Escape pada Kurung Kurawal
Memerlukan kurung kurawal literal dalam output Anda? Gandakan: {{ mencetak satu { dan }} mencetak satu }. Ini menghindari kebingungan dengan placeholder.
std.debug.print("{{x}}\n", .{});Membangun String
Untuk memformat ke dalam memori, bukan ke stdout, panggil std.fmt.allocPrint. Fungsi ini mengalokasikan dan mengembalikan []u8 baru yang berisi teks Anda.
const s = try std.fmt.allocPrint(
alloc, "id={}", .{id});Membebaskan Hasil Alokasi
Karena allocPrint menggunakan pengalokasi, hasilnya menjadi milik Anda dan harus di-free. Menempatkan defer tepat setelah pemanggilan membuat pembersihan tetap rapi.
defer alloc.free(s);Buffer Tetap dengan bufPrint
Jika Anda sama sekali tidak ingin menggunakan heap, tuliskan ke array milik Anda sendiri dengan std.fmt.bufPrint. Fungsi ini mengembalikan slice terisi yang benar-benar digunakan.
var buf: [16]u8 = undefined;
const out = try std.fmt.bufPrint(&buf, "{}", .{9});Pemeriksaan Singkat
Anda sedang mencetak nilai []const u8 dan ingin menampilkannya sebagai teks yang mudah dibaca.
Rangkuman
Anda memformat teks dengan std.fmt: placeholder {} dan {s}, basis, lebar, dan presisi, serta allocPrint dan bufPrint untuk string. 🎨
Belajar Zig dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 30
- Pelajaran
- 120
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Memformat Teks dengan std.fmt” gratis?
Ya — teks lengkap “Memformat Teks dengan std.fmt” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Zig Academy, upgrade ke CoddyKit PRO. Kursus Zig Academy mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Memformat Teks dengan std.fmt”?
Bangun string dengan penentu format. Kamu berlatih Zig Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai Zig Academy?
Tidak diperlukan pengalaman sebelumnya. Zig Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.
Berapa lama pelajaran “Memformat Teks dengan std.fmt” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran Zig Academy ini?
Ya. Setiap pelajaran Zig Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- String Adalah []const u8
- Literal String dan Escape
- Membandingkan dan Mencari Byte
- Memformat Teks dengan std.fmt