Benutzer-Werkzeuge

Webseiten-Werkzeuge


beispiel-programme_in_rust

====== Beispiel-Programme in Rust ====== * [[http://rustbyexample.com/|Rust-Beispiele]] ==== Hallo Welt ==== > vi Hallo_Welt.rs <file> // Hallo Welt fn main() { println!("Hallo, Welt!") } </file> > rustc Hallo_Welt.rs > ./Hallo_Welt Hallo, Welt! ==== hoch zählen ==== > vi hoch_zaehlen.rs <file> // hoch zählen // // https://doc.rust-lang.org/book/iterators.html // fn main() { for x in 0..10 { println!("{}", x); } } </file> > rustc hoch_zaehlen.rs > ./hoch_zaehlen 0 1 2 3 4 5 6 7 8 9 ==== Variable ==== > vi Variable.rs <file> // Variable // // https://doc.rust-lang.org/std/fmt/ // fn main() { // damit "a" verändert werden kann, muss "mut" davor gestellt werden let mut a = 1; println!("{}", a); a = 2; println!("{}", a); } </file> > rustc Variable.rs > ./Variable 1 2 ==== if ==== > vi if.rs <file> // if // // https://doc.rust-lang.org/book/if.html // fn main() { let x = 5; if x == 5 { println!("x is five!"); } else if x == 6 { println!("x is six!"); } else { println!("x is not five or six :("); } } </file> > rustc if.rs > ./if x is five! ==== for ==== [[https://doc.rust-lang.org/book/for-loops.html]] ==== while ==== > vi while.rs <file> // while // // https://doc.rust-lang.org/book/while-loops.html // fn main() { let mut x = 5; // mut x: u32 let mut done = false; // mut done: bool while !done { x += x - 3; println!("{}", x); if x % 5 == 0 { done = true; } } } </file> > rustc while.rs > ./while 7 11 19 35 ==== Argumente ==== [[http://stackoverflow.com/questions/15619320/how-to-access-command-line-parameters-in-rust]] === Argumente: Beispiel 1 === > vi argv_0.rs <file> // // Argumente: Beispiel 1 // // An easy way to deal with the result of args is to convert it to a Vec: use std::env; fn main() { let args: Vec<_> = env::args().collect(); if args.len() > 1 { println!("mein Aufruf lautet {}", args[0]); println!("das erste Argumente lautet {}", args[1]); println!("das zweite Argumente lautet {}", args[2]); } } </file> > rustc argv_0.rs > ./argv_0 1 2 3 4 A B C d mein Aufruf lautet ./argv_0 das erste Argumente lautet 1 das zweite Argumente lautet 2 === Argumente: Beispiel 2 === > vi argv_1.rs <file> // // Argumente: Beispiel 2 // // You can use the whole standard iterator toolbox to work with these arguments. // For example, to retrieve only the first argument: use std::env; fn main() { if let Some(arg0) = env::args().nth(0) { println!("Argument 0 {}", arg0); } println!("--------------------------------------------------------------------------------"); if let Some(arg1) = env::args().nth(1) { println!("Argument 1 {}", arg1); } } </file> > rustc argv_1.rs > ./argv_1 1 2 3 4 A B C d Argument 0 ./argv_1 -------------------------------------------------------------------------------- Argument 1 1 === Argumente: Beispiel 3 === > vi argv_alle_0.rs <file> // // Argumente: Beispiel 3 // use std::env; fn main() { let args: Vec<_> = env::args().collect(); if args.len() > 1 { let p = args.len(); // mut x: u32 let i = 1; //println!("das erste Argumente lautet {}", args[1]); for x in i..p { println!("das {}-te Argumente lautet {}", x, args[x]); } } } </file> > rustc argv_alle_0.rs > ./argv_alle_0 1 2 3 4 A B C d das 1-te Argumente lautet 1 das 2-te Argumente lautet 2 das 3-te Argumente lautet 3 das 4-te Argumente lautet 4 das 5-te Argumente lautet A das 6-te Argumente lautet B das 7-te Argumente lautet C das 8-te Argumente lautet d

beispiel-programme_in_rust.txt · Zuletzt geändert: 2020/10/22 17:17 von manfred