1.기본 데이터 타입
- 스칼라 타입:
- 정수형(Integer)
- i8, i16, i32, i64, i128, isize: 부호 있는 정수 (8,16,32,64,128byte, 포인터 크기)
- u8, u16, u32, u64, u128, usize: 부호 없는 정수
- 부동소수점형 (Floating-point)
- f32: 32비트 부동소수점
- f64: 64비트 부동소수점 (기본값)
- 불리언(Boolean)
- bool: true 또는 false 값을 가질 수 없음
- 문자형(Character)
- char: Unicode 스칼라 값 (4byte)
- 정수형(Integer)
- 튜플(Tuple)
- 여러 값을 묶어 하나의 복합 데이터 타입으로 만드는 방법
2. 기본 출력
- 문자열 및 숫자 출력
println! 매크로를 사용하여 문자열을 출력합니다.
fn main() {
let name = "Alice";
let age = 30;
println!("Name: {}", name);
println!("Age: {}", age);
}
- 위치 인자
위치 인자를 사용하여 출력할 수 있습니다. {} 안에 인자의 순서를 지정할 수 있습니다.
fn main() {
let name = "Alice";
let age = 25;
println!("Name: {0}, Age: {1}", name, age);
println!("Age: {1}, Name: {0}", name, age);
}
- 이름 인자
이름을 사용하여 출력합니다. {name} 형식으로 사용합니다.
fn main() {
let name = "Alice";
let age = 25;
println!("Name: {name}, Age: {age}");
}
3. 데이터 타입별 출력 방법
- 튜플
튜플을 출력할 때는 {:?}를 사용하여 디버그 형식으로 출력할 수 있습니다.
fn main() {
let tup = (500, 6.4, 'y');
println!("Tuple: {:?}", tup);
}
- 배열 및 백터
배열과 백터도 {:?}를 사용해 출력할 수 있습니다.
fn main() {
let arr = [1,2,3,4,5];
let vec = vec![1,2,3,4,5];
println!("Array: {:?}", arr);
println!("Vector: {:?}", vec);
}
- 디버그 출력
디버깅을 위한 출력은 {:?} 또는 {:#?}를 사용해 더 읽기 쉽게 출력할 수 있습니다.
fn main() {
let arr = [1,2,3,4,5];
println!("Array (debug): {:?}", arr);
println!("Array (pretty debug): {:#?}", arr);
}
- 사용자 정의 구조체 출력
구조체를 출력하려면 std::fmt::Debug 트레이드를 구현해야 합니다.
#[derive(Debug)]
struct Person {
name: String,
age: u32,
}
fn main() {
let person = Person {
name: String::from("Alice"),
age: 30,
};
println!("Person: {:?}", person);
}
- 파일 출력
파일에 데이터를 쓰기 위해서 std::fs 모듈을 사용할 수 있습니다.
use std::fs::File;
use std::io::{self, Write};
fn main() -> io::Result<()> {
let mut file = File::create("output.txt")?;
writeln!(file, "Hello, File!")?;
Ok(())
}
- 다양한 형식으로 출력
Rust에서는 다양한 형식으로 출력할 수 있습니다. 예를 들어, 부동소수점 숫자의 소수점 자리수를 지정할 수 있습니다.
fn main() {
let pi = 3.141592;
println!("Pi to 2 decimal places: {:.2}", pi);
}
GitHub - Koras02/rust-tutorial: https://thinky.tistory.com/category/Back-End/Rust
https://thinky.tistory.com/category/Back-End/Rust. Contribute to Koras02/rust-tutorial development by creating an account on GitHub.
github.com
LIST
'Back-End > Rust' 카테고리의 다른 글
[Rust] 6장 에러 처리 (0) | 2025.03.08 |
---|---|
[Rust] 5장 패턴 매칭(Pattern Matching) (0) | 2025.03.06 |
[Rust] 3장 빌림(Borrowing) (0) | 2025.02.27 |
[Rust] 2장 Rust의 소유권(Ownership) (0) | 2025.02.26 |
[Rust] 1장 Rust란 무엇인가 (0) | 2025.02.23 |