Variablen und Mutabilität (Rust Programmiersprache): Unterschied zwischen den Versionen

Aus ahrensburg.city
Zur Navigation springen Zur Suche springen
(// via Wikitext Extension for VSCode)
(// via Wikitext Extension for VSCode)
Zeile 10: Zeile 10:
</pre>
</pre>


===Veränderliche Variable===
===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>


==Variiablenübergabe==
==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.
===By Mutable Reference===


===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;
     print_value(&mut x);
     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;
  }