HugoNikanors blogg‽

A blog about nothing, but mostly itself.

Hugo Hörnquist 03 Jan 2018
Lästid: 1 minut(er)

Hur jag skrev "Hello, World!" i Rust

Nyligen har jag funderat på att skriva en client till ett protokoll vilket agerar via TCP sockets. Min första tanke var att skriva det i C, eftersom det är ett simpelt språk. Tyvärr var alla exempel alldeles för krångliga, och innehöll stora mängder DNS av någon anledning. Efter viss diskussion om C, C++ och andra språk blev kom vi fram till att Rust nog var ett trevligt mellansteg.

Nu har jag hört att varje gång man börjar med ett nytt programmeringsspråk ska man alltid först skriva "Hello, World!". Så jag började jobba. Flera minuter efter att innan aldrig skrivit Rust innan var jag klar:

use std::io::prelude::*;
use std::net::TcpStream;

fn main () {
    let mut stream = TcpStream::connect ("127.0.0.1:8080").unwrap();

    let _ = stream.write(&[1]);
    let mut data = [0; 128];
    let _ = stream.read(&mut data);
    println!("{}", String::from_utf8_lossy(&data));
}

För att köra behöver först en "Hello, World!" server skapas, vilket enklast görs genom:

echo "Hello, World!" | nc -l 8080

När programmet sedan körs skrivs "Hello, World!" ut på skärmen. Jag överväger om det finns ett enklare sätt att få samma resultat. Men eftersom jag inte kan Rust kan jag inte uttala mig i frågan.


RSS RSS-feed to see more like this.
About Contact Legal Q&A