[Rust] 4장 데이터 타입(Data Types)

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)
  • 튜플(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