Fehler aus Funktionen zurückgeben
Machen Sie Fehlschläge in Signaturen explizit.
Fehler aus Funktionen zurückgeben ist eine kostenlose Zig Academy-Lektion auf CoddyKit. Dies ist Lektion 2 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Zig Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Zig Academy-Kurs umfasst insgesamt 4 Lektionen.
Teile dieser Lektion wurden noch nicht übersetzt und werden auf Englisch angezeigt.
Failure in the Signature
When a function can fail, say so in its return type. An error union like ParseError!u32 warns every caller up front.
fn parse(s: []const u8) ParseError!u32 {
// ...
}Return the Success Value
On the happy path you just return the payload as normal. Zig wraps that plain value into the success side of the union for you.
return 42;Return an Error Instead
To fail, return one of your errors in the same spot. The single return statement decides which side of the union you produce.
if (s.len == 0) return error.Empty;One Return, Two Outcomes
A function with an error union can return a value in one branch and an error in another. Both satisfy the declared type.
if (ok) return value;
return error.Failed;Void Plus Errors
A function that does work but yields no value can still fail. Use !void so it returns nothing on success or an error on failure.
fn save() !void {
// ...
}Errors Bubble at the Call Site
When you call a fallible function, you receive an error union too. You cannot ignore it; the compiler makes you handle it.
const n = parse(input);Capture Errors with if
An if can split the union: capture the value in the main branch and the error after else, naming each with a pipe.
if (parse(input)) |n| {
use(n);
} else |err| {
report(err);
}Name the Error Set Precisely
Listing the exact set before ! keeps your contract honest. Callers learn the full list of failures without reading the body.
fn open(p: []const u8) FileError!File {}Errors Cross Function Boundaries
An error returned deep inside your code travels outward only when each function in the chain declares it can fail too.
Make Failure Explicit
This is the heart of Zig error handling: failure is never hidden. The signature is a promise about what can go wrong.
Compiler Has Your Back
Forget to handle a returned error and the build fails. Zig refuses to let a possible failure silently slip through.
Quick Check
A function does work but returns no useful value, yet it might fail. What return type fits?
Recap
You declared fallible functions with !T, returned values or errors from one return, and saw the compiler force callers to handle them. ✅
Häufig gestellte Fragen
Ist die Lektion „Fehler aus Funktionen zurückgeben“ kostenlos?
Ja — der vollständige Text von „Fehler aus Funktionen zurückgeben“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Zig Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Zig Academy-Kurs umfasst insgesamt 4 Lektionen.
Was lerne ich in „Fehler aus Funktionen zurückgeben“?
Machen Sie Fehlschläge in Signaturen explizit. Du übst Zig Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.
Brauche ich Erfahrung, um Zig Academy zu starten?
Keine Vorkenntnisse erforderlich. Zig Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 2 von 4.
Wie lange dauert die Lektion „Fehler aus Funktionen zurückgeben“?
Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.
Kann ich in dieser Zig Academy-Lektion Code schreiben und ausführen?
Ja. Jede Zig Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.
Alle Lektionen in diesem Kurs
- Fehlermengen und die !T-Union
- Fehler aus Funktionen zurückgeben
- Fehler mit try weiterreichen
- Abgeleitete Fehlermengen