Variablen und Mutabilität (Rust Programmiersprache): Unterschied zwischen den Versionen
(// via Wikitext Extension for VSCode) |
(// via Wikitext Extension for VSCode) |
||
Zeile 10: | Zeile 10: | ||
</pre> | </pre> | ||
===Veränderliche | ===Veränderliche Variablen=== | ||
Wenn Sie eine Variable verändern möchten, können Sie das Schlüsselwort `mut` verwenden, um eine veränderliche Variable zu erstellen. | Wenn Sie eine Variable verändern möchten, können Sie das Schlüsselwort `mut` verwenden, um eine veränderliche Variable zu erstellen. | ||
<pre> | <pre> | ||
Zeile 16: | Zeile 16: | ||
x = 10; | x = 10; | ||
</pre> | </pre> | ||
===Kontrolle über die Lebensdauer und den Gültigkeitsbereich von Daten in der Rust Programmiersprache=== | |||
===Datentypen=== | ===Datentypen=== | ||
In Rust gibt es verschiedene Arten von Datentypen, die verwendet werden können: | In Rust gibt es verschiedene Arten von Datentypen, die verwendet werden können: | ||
Zeile 47: | Zeile 50: | ||
<pre> | <pre> | ||
let x: char = 'a'; | let x: char = 'a'; | ||
let y: char = '😀'; | let y: char = '😀'; | ||
Zeile 59: | Zeile 61: | ||
</pre> | </pre> | ||
== | ==Variablenübergabe== | ||
In Rust können Variablen auf zwei Arten übergeben werden: durch Kopieren oder durch Ausleihen. | In Rust können Variablen auf zwei Arten übergeben werden: durch Kopieren oder durch Ausleihen. | ||
Zeile 95: | Zeile 97: | ||
In diesem Beispiel wird die Funktion `print_value` einen Verweis auf die Variable `x` anstelle einer Kopie erhalten. Dadurch kann die Funktion auf den Wert von `x` zugreifen, ohne eine Kopie zu erstellen. | In diesem Beispiel wird die Funktion `print_value` einen Verweis auf die Variable `x` anstelle einer Kopie erhalten. Dadurch kann die Funktion auf den Wert von `x` zugreifen, ohne eine Kopie zu erstellen. | ||
===Veränderliche Referenz=== | |||
In Rust können Sie auch eine veränderliche Referenz an eine Funktion übergeben, indem Sie `&mut` verwenden. | In Rust können Sie auch eine veränderliche Referenz an eine Funktion übergeben, indem Sie `&mut` verwenden. | ||
Zeile 102: | Zeile 104: | ||
fn main() { | fn main() { | ||
let mut x = 5; | let mut x = 5; | ||
modify_value(&mut x); | |||
println!("{}", x); // Ausgabe: 10 | println!("{}", x); // Ausgabe: 10 | ||
} | } | ||
fn modify_value(value: &mut i32) { | |||
*value = 10; | |||
} | |||
</pre> | |||
==Fazit== | ==Fazit== | ||
In Rust gibt es verschiedene Arten von Variablen und Typen, die verwendet werden können. Durch die Verwendung von unveränderlichen Variablen und Typen können Sie sicherstellen, dass Ihr Code sicherer und fehlerfreier ist. Durch die Verwendung von veränderlichen Variablen können Sie den Wert einer Variablen ändern, wenn dies erforderlich ist. Durch die Verwendung von verschiedenen Datentypen können Sie verschiedene Arten von Daten in Ihrem Code repräsentieren. Durch die Verwendung von Kopien oder Ausleihen können Sie Variablen auf verschiedene Weisen übergeben und auf sie zugreifen. | In Rust gibt es verschiedene Arten von Variablen und Typen, die verwendet werden können. Durch die Verwendung von unveränderlichen Variablen und Typen können Sie sicherstellen, dass Ihr Code sicherer und fehlerfreier ist. Durch die Verwendung von veränderlichen Variablen können Sie den Wert einer Variablen ändern, wenn dies erforderlich ist. Durch die Verwendung von verschiedenen Datentypen können Sie verschiedene Arten von Daten in Ihrem Code repräsentieren. Durch die Verwendung von Kopien oder Ausleihen können Sie Variablen auf verschiedene Weisen übergeben und auf sie zugreifen. | ||
==Fragen zu Variablen und Datentypen in Rust== | |||
Hier sind einige häufige Fragen zu Variablen und Datentypen in Rust, die in einem Spickzettel nützlich sein könnten: | |||
===Unveränderliche und veränderliche Variablen=== | |||
* Wie deklariere ich eine unveränderliche Variable in Rust? | |||
<pre> | |||
let x = 5; | |||
</pre> | |||
* Wie deklariere ich eine veränderliche Variable in Rust? | |||
<pre> | |||
let mut x = 5; | |||
x = 10; | |||
</pre> | |||
===Datentypen=== | |||
* Welche Datentypen gibt es in Rust für Ganzzahlen? | |||
<pre> | |||
let x: i32 = 5; // vorzeichenbehaftete 32-Bit-Ganzzahl | |||
let y: u32 = 10; // vorzeichenlose 32-Bit-Ganzzahl | |||
</pre> | |||
* Wie deklariere ich eine Fließkommazahl in Rust? | |||
<pre> | |||
let x: f32 = 5.0; // einfache Genauigkeit | |||
let y: f64 = 10.0; // doppelte Genauigkeit | |||
</pre> | |||
* Wie deklariere ich einen booleschen Wert in Rust? | |||
<pre> | |||
let x: bool = true; | |||
let y: bool = false; | |||
</pre> | |||
* Wie deklariere ich ein Zeichen in Rust? | |||
<pre> | |||
let x: char = 'a'; | |||
let y: char = '😀'; | |||
</pre> | |||
* Wie deklariere ich eine Zeichenkette in Rust? | |||
<pre> | |||
let x: String = "Hello, World!".to_string(); | |||
</pre> | |||
===Variablenübergabe=== | |||
* Wie übergebe ich eine Variable durch Kopieren an eine Funktion? | |||
<pre> | |||
fn main() { | |||
let x = 5; | |||
print_value(x); | |||
println!("{}", x); // Ausgabe: 5 | |||
} | |||
fn print_value(value: i32) { | |||
println!("{}", value); | |||
} | |||
</pre> | |||
* Wie übergebe ich eine Variable durch Ausleihen an eine Funktion? | |||
<pre> | |||
fn main() { | |||
let x = 5; | |||
print_value(&x); | |||
println!("{}", x); // Ausgabe: 5 | |||
} | |||
fn print_value(value: &i32) { | |||
println!("{}", value); | |||
} | |||
</pre> | |||
* Wie übergebe ich eine veränderliche Referenz an eine Funktion? | |||
<pre> | |||
fn main() { | |||
let mut x = 5; | |||
modify_value(&mut x); | |||
println!("{}", x); // Ausgabe: 10 | |||
} | |||
fn modify_value(value: &mut i32) { | |||
*value = 10; | |||
} | |||
</pre> |
Version vom 28. Januar 2025, 22:48 Uhr
Variablenarten und -typen in Rust
In Rust gibt es verschiedene Arten von Variablen und Typen, die verwendet werden können:
Unveränderliche Variablen
Standardmäßig sind Variablen in Rust unveränderlich. Das bedeutet, dass der Wert einer Variablen nach ihrer Initialisierung nicht mehr geändert werden kann. Dies hilft, Fehler zu vermeiden und den Code sicherer zu machen.
let x = 5;
Veränderliche Variablen
Wenn Sie eine Variable verändern möchten, können Sie das Schlüsselwort `mut` verwenden, um eine veränderliche Variable zu erstellen.
let mut x = 5; x = 10;
Kontrolle über die Lebensdauer und den Gültigkeitsbereich von Daten in der Rust Programmiersprache
Datentypen
In Rust gibt es verschiedene Arten von Datentypen, die verwendet werden können:
Ganzzahlen
Ganzzahlen können sowohl vorzeichenbehaftet als auch vorzeichenlos sein. Die Größe der Ganzzahlen kann variieren, abhängig von der Anzahl der Bits, die sie verwenden.
let x: i32 = 5; // vorzeichenbehaftete 32-Bit-Ganzzahl let y: u32 = 10; // vorzeichenlose 32-Bit-Ganzzahl
Fließkommazahlen
Fließkommazahlen repräsentieren Zahlen mit Dezimalstellen. Sie können entweder einfacher Genauigkeit (f32) oder doppelter Genauigkeit (f64) sein.
let x: f32 = 5.0; // einfache Genauigkeit let y: f64 = 10.0; // doppelte Genauigkeit
Boolesche Werte
Boolesche Werte können entweder `true` oder `false` sein.
let x: bool = true; let y: bool = false;
Zeichen
Zeichen repräsentieren Unicode-Zeichen und werden in Rust als `char`-Typ definiert.
let x: char = 'a'; let y: char = '😀';
Zeichenketten
Zeichenketten sind eine Sequenz von Zeichen und werden in Rust als `String`-Typ definiert.
let x: String = "Hello, World!".to_string();
Variablenübergabe
In Rust können Variablen auf zwei Arten übergeben werden: durch Kopieren oder durch Ausleihen.
Kopieren
Wenn eine Variable an eine Funktion übergeben wird, wird standardmäßig eine Kopie der Variable erstellt. Dies bedeutet, dass die ursprüngliche Variable nach dem Aufruf der Funktion unverändert bleibt.
fn main() { let x = 5; print_value(x); println!("{}", x); // Ausgabe: 5 } fn print_value(value: i32) { println!("{}", value); }
Ausleihen
Wenn Sie möchten, dass eine Funktion auf den Wert einer Variablen zugreifen kann, ohne eine Kopie zu erstellen, können Sie einen Verweis auf die Variable übergeben. Dies wird als "Ausleihen" bezeichnet.
fn main() { let x = 5; print_value(&x); println!("{}", x); // Ausgabe: 5 } fn print_value(value: &i32) { println!("{}", value); }
In diesem Beispiel wird die Funktion `print_value` einen Verweis auf die Variable `x` anstelle einer Kopie erhalten. Dadurch kann die Funktion auf den Wert von `x` zugreifen, ohne eine Kopie zu erstellen.
Veränderliche Referenz
In Rust können Sie auch eine veränderliche Referenz an eine Funktion übergeben, indem Sie `&mut` verwenden.
fn main() { let mut x = 5; modify_value(&mut x); println!("{}", x); // Ausgabe: 10 } fn modify_value(value: &mut i32) { *value = 10; }
Fazit
In Rust gibt es verschiedene Arten von Variablen und Typen, die verwendet werden können. Durch die Verwendung von unveränderlichen Variablen und Typen können Sie sicherstellen, dass Ihr Code sicherer und fehlerfreier ist. Durch die Verwendung von veränderlichen Variablen können Sie den Wert einer Variablen ändern, wenn dies erforderlich ist. Durch die Verwendung von verschiedenen Datentypen können Sie verschiedene Arten von Daten in Ihrem Code repräsentieren. Durch die Verwendung von Kopien oder Ausleihen können Sie Variablen auf verschiedene Weisen übergeben und auf sie zugreifen.
Fragen zu Variablen und Datentypen in Rust
Hier sind einige häufige Fragen zu Variablen und Datentypen in Rust, die in einem Spickzettel nützlich sein könnten:
Unveränderliche und veränderliche Variablen
- Wie deklariere ich eine unveränderliche Variable in Rust?
let x = 5;
- Wie deklariere ich eine veränderliche Variable in Rust?
let mut x = 5; x = 10;
Datentypen
- Welche Datentypen gibt es in Rust für Ganzzahlen?
let x: i32 = 5; // vorzeichenbehaftete 32-Bit-Ganzzahl let y: u32 = 10; // vorzeichenlose 32-Bit-Ganzzahl
- Wie deklariere ich eine Fließkommazahl in Rust?
let x: f32 = 5.0; // einfache Genauigkeit let y: f64 = 10.0; // doppelte Genauigkeit
- Wie deklariere ich einen booleschen Wert in Rust?
let x: bool = true; let y: bool = false;
- Wie deklariere ich ein Zeichen in Rust?
let x: char = 'a'; let y: char = '😀';
- Wie deklariere ich eine Zeichenkette in Rust?
let x: String = "Hello, World!".to_string();
Variablenübergabe
- Wie übergebe ich eine Variable durch Kopieren an eine Funktion?
fn main() { let x = 5; print_value(x); println!("{}", x); // Ausgabe: 5 } fn print_value(value: i32) { println!("{}", value); }
- Wie übergebe ich eine Variable durch Ausleihen an eine Funktion?
fn main() { let x = 5; print_value(&x); println!("{}", x); // Ausgabe: 5 } fn print_value(value: &i32) { println!("{}", value); }
- Wie übergebe ich eine veränderliche Referenz an eine Funktion?
fn main() { let mut x = 5; modify_value(&mut x); println!("{}", x); // Ausgabe: 10 } fn modify_value(value: &mut i32) { *value = 10; }