0Pricing
Zig Academy · Pelajaran

Mendeklarasikan Tipe Opsional

Tambahkan ? agar nilai boleh tidak ada.

Mendeklarasikan Tipe Opsional adalah pelajaran Zig Academy gratis di CoddyKit. Ini adalah pelajaran 1 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.

Bagian dari pelajaran ini belum diterjemahkan dan ditampilkan dalam bahasa Inggris.

Sometimes There Is Nothing

Real programs hit cases where a value is simply absent: a lookup misses, a field is empty. Zig models this absence safely and on purpose.

The Optional Type

An optional type can hold either a real value of some type, or the special value null meaning nothing is there.

Add a Leading Question Mark

You make any type optional by writing ? in front of it. So ?i32 is an integer that might also be null.

var age: ?i32 = null;

A Value Fits Right In

An optional happily holds a normal value too. You assign 42 to an ?i32 exactly as you would assign to a plain i32.

var age: ?i32 = 42;

null Is the Empty State

The keyword null is the literal that means there is no value. Only optional types are allowed to hold it.

const missing: ?u8 = null;

Non-Optionals Reject null

A plain i32 can never be null. The compiler stops you, so absence stays visible in the type rather than hiding as a bad value.

var n: i32 = null; // error: expected i32

Wrap Any Type You Like

Optionals are not just for numbers. You can mark a bool, a struct, a slice, or any type as optional by adding the question mark.

var found: ?bool = null;

Inference Still Works

Assign an optional value and Zig infers the optional type for you, so you do not always have to spell it out by hand.

const score: ?u32 = 10;

Why Not Use a Sentinel

In C people fake absence with values like -1 or a null pointer. Zig gives you a real optional so absence cannot be confused with data.

Absence Is Part of the Type

Because ? lives in the type itself, anyone reading your code instantly sees that a value might be missing and must be handled.

Defaulting to null

It is common to start an optional at null and fill it in later once you actually have the value to store.

var result: ?[]const u8 = null;

Quick Check

How do you declare a u32 that might be missing?

Recap

You met optionals: write ? before a type to allow a real value or null. Absence now lives in the type, plain and visible. ❓

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Mendeklarasikan Tipe Opsional” gratis?

Ya — teks lengkap “Mendeklarasikan Tipe Opsional” 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 “Mendeklarasikan Tipe Opsional”?

Tambahkan ? agar nilai boleh tidak ada. 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 1 dari 4.

Berapa lama pelajaran “Mendeklarasikan Tipe Opsional” 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

  1. Mendeklarasikan Tipe Opsional
  2. Membuka Bungkus dengan Aman menggunakan if dan orelse
  3. Penunjuk Opsional dan ?*T
  4. null Dibandingkan dengan undefined
← Kembali ke Zig Academy