Menu
Coddy logo textTech

format! 매크로

Coddy Rust 여정의 Fundamentals 섹션에 포함된 레슨 — 75개 중 70번째.

Rust에서 format! 매크로를 사용하면 텍스트와 변수를 읽기 쉽고 사용자 정의 가능한 방식으로 결합할 수 있습니다. 이 매크로는 println!과 유사하지만, 출력을 콘솔에 인쇄하는 대신 변수에 저장하거나 다른 작업에서 사용할 수 있는 형식화된 문자열을 반환합니다.

가장 간단한 구문은 이름 없는 자리표시자 {}를 사용합니다:

let name = "Alice";
let age = 30;

let formatted = format!("Name: {}, Age: {}", name, age);
println!("{}", formatted);
// 출력: Name: Alice, Age: 30

변수 이름을 자리표시자에 직접 사용할 수 있습니다:

let name = "Bob";
let age = 25;

let formatted = format!("Name: {name}, Age: {age}");
println!("{}", formatted);
// 출력: Name: Bob, Age: 25

숫자를 사용하여 인수의 위치를 지정할 수 있습니다:

let formatted = format!("{1} {0} {2}", "first", "second", "third");
println!("{}", formatted);
// 출력: second first third

형식 지정자를 사용하여 값이 형식화되는 방식을 제어할 수 있습니다:

// 숫자 형식 지정
let pi = 3.1415926;
let formatted_float = format!("{:.2}", pi);
// "3.14"

// 0으로 채우기
let padded = format!("{:0>5}", "123");
// "00123"
challenge icon

챌린지

쉬움

다음의 정확한 규칙을 사용하여 이름과 출생 연도로부터 비밀 코드를 생성하는 프로그램을 작성하세요:

  • 이름의 첫 글자를 가져와 대문자로 만듭니다.
  • 연도의 숫자를 역순으로 뒤집습니다.
  • 첫 글자를 "⭐" 기호로 감쌉니다.
  • 감싸진 글자와 뒤집힌 연도 사이에 "-"를 추가합니다.

문자열을 뒤집으려면 다음 코드를 사용하세요: .to_string().chars().rev().collect::<String>()

치트 시트

format! 매크로는 텍스트와 변수를 결합하여 변수에 저장할 수 있는 형식화된 문자열을 반환합니다.

이름 없는 자리표시자를 사용하는 기본 구문:

let name = "Alice";
let age = 30;
let formatted = format!("Name: {}, Age: {}", name, age);

자리표시자에 변수 이름을 직접 사용하기:

let name = "Bob";
let age = 25;
let formatted = format!("Name: {name}, Age: {age}");

숫자로 인자 위치 지정하기:

let formatted = format!("{1} {0} {2}", "first", "second", "third");
// Output: "second first third"

출력 제어를 위한 형식 지정자:

// Number formatting
let pi = 3.1415926;
let formatted_float = format!("{:.2}", pi); // "3.14"

// Padding with zeros
let padded = format!("{:0>5}", "123"); // "00123"

문자열을 뒤집으려면: .to_string().chars().rev().collect::<String>()

직접 해보기

use std::io;


fn main() {
    let mut input_name = String::new();
    let mut input_year = String::new();
    io::stdin().read_line(&mut input_name).unwrap();
    io::stdin().read_line(&mut input_year).unwrap();
    let name = input_name.trim();
    let year: i32 = input_year.trim().parse().unwrap();

    // 아래에 코드를 작성하세요
    
    
    let secret_code =
    println!("{}", secret_code);
}
quiz icon실력 점검

이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.

Fundamentals의 모든 레슨