Funktionen deklarieren
Teil des Abschnitts Grundlagen der Rust-Journey von Coddy. Lektion 49 von 75.
Eine Funktion ist eine Folge von Code mit einem Namen. Der Zweck einer Funktion besteht darin, einen Codeabschnitt mehrmals wiederzuverwenden.
Schau dir zum Beispiel diesen Code an:
println!("Welcome to Coddy");
println!("New session...");
println!("Welcome to Coddy");
println!("Another session...");
println!("Welcome to Coddy");Wir verwenden immer wieder denselben Code println!("Welcome to Coddy"). Ein weiteres Problem mit diesem Code ist, dass wir 3 verschiedene Codezeilen ändern müssten, wenn wir die Nachricht Welcome to Coddy in etwas anderes ändern wollten, zum Beispiel in „Welcome aboard“. Um dieses Problem zu lösen, verwenden wir Funktionen.
Um eine Funktion zu deklarieren, verwenden wir die folgende Syntax:
fn function_name(parameters) {
// Code
}Für unser Beispiel erstellen wir eine Funktion namens greet, und sie wird so aussehen:
fn greet() {
println!("Welcome to Coddy");
}Um die Funktion zu verwenden/aufzurufen/auszuführen, schreiben wir greet();:
greet();
println!("New session...");
greet();
println!("Another session...");
greet();Dies führt zur gleichen Ausgabe wie oben.
Hinweis: In Rust erlaubt der Compiler, eine Funktion aufzurufen, bevor sie in der Datei deklariert ist. Es wird jedoch empfohlen, die Funktionsdefinition vor ihrem Aufruf/ihrer Ausführung zu schreiben.
Aufgabe
EinfachSchreibe ein Programm, das eine Eingabe erhält: eine Zahl. Die Eingabezahl gibt an, wie oft die folgende Funktion ausgeführt werden soll.
Erstelle eine Funktion, die die Summe aller Zahlen zwischen 1 und 1000 (einschließlich) berechnet und ausgibt. Benenne die Funktion, wie du möchtest.
Hinweis! Als empfohlene Konvention solltest du die Funktion vor den Aufruf- beziehungsweise Ausführungsanweisungen in deinem Code schreiben.
Probier es selbst
use std::io;
// Funktionsdeklaration
fn sum_numbers() {
// Funktion vervollständigen
}
fn main() {
let mut input = String::new();
io::stdin().read_line(&mut input).unwrap();
let n: i32 = input.trim().parse().unwrap();
for _ in 0..n {
// Die Funktion n-mal aufrufen
}
}Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Grundlagen
4Operatoren Teil 1
Arithmetische OperatorenModulo-OperatorArithmetische AbkürzungenVergleichsoperatorenString-Vergleich7Grundlagen IO
Ausgabe in die KonsoleBenutzereingaben lesenWiederholung - Bis 120Wiederholung - Wahr oder Falsch5Operatoren Teil 2
Logische Operatoren Teil 1Logische Operatoren Teil 2Wiederholung - Einfache LogikLogische Operatoren Teil 311Funktionen
Funktionen deklarierenParameter und ArgumenteRückgabewerteMehrere RückgabewerteWiederholung - Sigma-FunktionWiederholung - Validierungsfunktion14Iterieren über Arrays
Range-LeitfadenErweiterte For-SchleifeBorrowing in SchleifenGängige Array-Operationen3Variablen Teil 2
TypdeklarationNamenskonventionenTypinferenzRückblick - Variablen initialisierenTypumwandlung6Entscheidungsfindung
If-AusdrückeIf-ElseMatch-AnweisungZusammenfassung - If-ElseVerschachteltes If-Else9Schleifen
For-Schleife über SerienWhile-SchleifeBreakContinueVerschachtelte SchleifenSchleifen-LabelsEndlosschleifeRückblick – Dynamische EingabeÜbe selbstständig: Online-Rust-Compiler