*Arbeiten mit primitiven Datentypen
*Ausgabe in der Konsole
1* Mit let lässt sich also eine Variable deklarieren. Mit einem Doppelpunkt hinter dem Variablennamen, das nennt man Annotation, lässt sich der Datentyp in gekürzter Form definieren. Aber ein bißchen etwas machen, möchte man mit diesen Elementen auch. Und das ist gar nicht so schwierig. Abgesehen davon, wäre doch eine Ausgabe auch nett, oder?
Eines vorweg, in Rust muss der Datentyp klar sein, den das Endergebnis liefert. Deshalb kann man nicht verschiedene Datentypen herummixen, das erlaubt der Compiler nicht. Aber darum kümmern wir uns ein anderes mal.
Um es nochmal zu wiederholen, eine Variable kann nicht einfach so dastehen.
x;
Jede "normale" Variable wird mit einem let erzeugt. Warum sag ich das?
Weil man (oder ich eben) dazu geneigt, einfach mal
x=7;
y=4;
z=x+y;
in die Tastatur zu hämmern und verärgert über diesen kleinkarierten Compiler ist, der so vollkommen fantasielos ist.
Also bauen wir in der Main Funktion (so sollte das dann tatsächlich aussehen):
fn main(){
let x = 7;
let y= 4;
let z = x+y;
}
bzw. in der Entwicklungsumgebung, wird das häufig durch verschiedene Farben unterstützt, damit es besser lesbar wird.
Schön ist es natürlich auch, wenn diese Werte irgendwo ausgegeben werden. Dafür ist das im Eingang verwendete println! Makro verantwortlich. Und hier noch ein Hinweis! Makros erkennt man am Rufzeichen hinten dran. Da hat sich quasi schon mal wer die Mühe gemacht, etwas Code zu schreiben, damit wir nicht unnötig mit einer Textausgabe beschäftigt sind.
Für println! gibt es mehrere Vorgehensweisen, je nachdem was benötigt wird. Das eine ist die normale Textausgabe:
println!("Ich bin ein Text und steh so herum, fidibum");
Eine weitere Methode besteht aus der Ausgabe von Variablen. Wollten wir einfach "x" ins println! eingeben, steht dann nicht zB 7 als Wert, sondern natürlich einfach nur x. Hier gibt es 2 Herangehensweisen, im Prinzip muss man sich (so mein Stand heute) nur 1 davon merken, die andere kann man im Hinterkopf behalten, falls man es wo anders mal sieht.
Die erste davon, schließt die besagte Variable in geschweifte Klammern, innerhalb des println! Konstrukts.
println!("{x}");
Die zweite, etwas mehr sperrige Version, setzt leere geschweifte Klammern, innerhalb der println! Anführungszeichen und setzt die Variablen, mit einem Beistrich getrennt, bereits außerhalb.
println!("{}",x);
Wenn es um mehrere Variablen geht, sieht der Syntax so aus, wobei der Text innerhalb der Anführungszeichen, der sich zwischen den Variablen befindet genau so ausgegeben wird.
println! ("{x} und {y} = {z}");
oder eben
println!("{} und {} = {}",x,y,z);
Ausgabe: