Rust 마스코트로 콘솔 메시지 출력
2023. 3. 5. 18:07ㆍLanguage/Rust
Rust가 인기 있는 이유 중 ferris라는 마스코드가 있습니다.
이번엔 콘솔로 Ferris가 말풍선으로 말하는 것 처럼 출력하는 방법에 대해 알아보겠습니다.
먼저 프로젝트를 생성합니다.
> cargo new hello_ferris
├── Cargo.toml
└── src
└── main.rs
위와 같이 Cargo.toml 파일과 main,rs 파일이 생성됩니다.
우선 std::io라는 I/O 기능을위한 표준 라이브러리를 추가합니다. 표준 라이브러리는 기본적으로 종속성을 추가하지 않아도 됩니다.
여기서는 모듈 페이지에서 조회할 수 있는 {stdout, BufWriter}만 사용합니다.
use std::io::{stdout,Bufwriter};
fn main() {
}
이제 ferris를 출력하기 위해 Cargo.toml에 의존성을 추가 합니다.
[dependencies]
ferris-says = "0.2.1"
마지막으로 아래와 같이 main 함수를 작성합니다.
use std::io::{stdout, BufWriter};
use ferris_says::say;
fn main() {
let stdout = stdout();
let message = String::from("안녕!");
let width = message.chars().count();
let mut writer = BufWriter::new(stdout.lock());
say(message.as_bytes(), width, &mut writer).unwrap();
}
ferris_says
pub fn say<W>(input: &[u8], max_width: usize, writer: &mut W)
ferris의 say 함수를 사용하기 위해서는 writer를 사용합니다.
BufWriter를 사용하면 println 보다 더 빠르게 출력이 가능합니다.
message에 출력하고 싶은 메시지를 적고 say 함수를 사용해서 출력합니다.
_____
/ 안 \
\ 녕! /
-----
\
\
_~^~^~_
\) / o o \ (/
'_ - _'
/ '-----' \
'Language > Rust' 카테고리의 다른 글
Rust gRPC 사용하기 (0) | 2023.03.06 |
---|---|
Rust로 폴더 감시자 만들기 (0) | 2023.03.05 |
Rust Dangling Pointer (0) | 2023.02.25 |
Rust의 배열 (0) | 2023.01.09 |
Rust의 제네릭(Generic) (0) | 2023.01.09 |