본문 바로가기

Rust

(Rust) - 입출력

반응형

🍳머리말

백준을 rust로 풀려면 표준 입출력 구현이 필요합니다. 이에 대한 설명글입니다.


📕 std::io

📔 설명

https://doc.rust-lang.org/std/io/index.html

 

std::io - Rust

Wraps a writer and buffers output to it, flushing whenever a newline (0x0a, '\n') is detected.

doc.rust-lang.org

* 표준 입출력시 변수에 담기는 값은 "\n", "\r"같은 white space가 포함되니 이를 제거해 저장해야 합니다.


📕 Code

data type을 포함한 간단한 예제입니다.

use std::{any, io};
fn print_type_of<T>(_: &T) {
    println!("{}", std::any::type_name::<T>())
}
fn main() {
    while true {
        let mut line = String::new();
        io::stdin()
            .read_line(&mut line)
            .expect("Falied to read line");
        print_type_of(&line);
        print_type_of(&"*".to_owned());
        println!("{:#?}", line);
        if line.eq("*".into()) {
            break;
        }
        let numbers: Vec<&str> = line.split_whitespace().collect();
        println!("{:#?}", numbers);
    }
}

*더 나은 내용을 위한 지적, 조언은 언제나 환영합니다.

'Rust' 카테고리의 다른 글

(Rust) - enum vs struct  (0) 2022.11.07