Rust에서 정수를 인쇄할 때 컴파일 오류
Nilesh Katuwal
2023년6월21일
이 글은 Rust v0.13.0
에서 정수를 인쇄하려고 할 때 컴파일 오류를 피하는 방법에 관한 것입니다.
Rust의 컴파일 오류
컴파일 오류는 코드의 결함 또는 더 자주 컴파일러 문제로 인해 컴파일러가 컴퓨터 프로그램 소스 코드의 일부를 빌드하는 데 어려움을 겪을 때 발생합니다.
Rust v0.13.0
의 컴파일 오류를 피하려면 명시적으로 정수 유형을 지정해야 합니다.
예제 코드:
fn main(){
let x = 10;
println!("x = {}", x);
}
출력:
x = 10
코드는 Rust v0.13.0
이 포함된 새 컴파일러에서 작동합니다. i32
를 명시적으로 지정할 필요가 없습니다. 그러나 i32
를 사용하여 컴파일 오류 없이 정수를 인쇄할 수 있습니다.
예제 코드:
fn main(){
let x: i32 = 15;
println!("x = {}", x);
}
출력:
x = 15
Rust에서 기본 유형의 필드에 액세스
오류가 있는 코드 예:
let x: u32 = 0;
println!("{}", x.foo);
위의 코드에는 오류가 있으며 정수를 인쇄하지 않습니다.
정수 값을 인쇄하는 올바른 코드는 다음과 같습니다.
// We declare a struct called `Foo`, which contains two fields:
struct Foo {
x: u32,
y: i64,
}
fn main()
{
let variable = Foo { x: 0, y: 1 };
println!("x: {}, y: {}", variable.x, variable.y);
}
우리는 x
와 y
라는 두 개의 필드를 포함하는 Foo
라는 struct
를 선언합니다. 해당 필드에 액세스하기 위해 Foo
인스턴스를 생성했습니다.
출력:
x: 0, y: 1
Rust에서 두 개의 정수 추가하기
두 개의 정수를 더하고 그 결과를 출력하기 위해 아래 코드를 사용하여 컴파일 오류를 피할 수 있습니다.
예제 코드:
fn main() {
let x: i32 = 20;
let y: i32 = 40;
let sum = return_sum(x, y);
println!("The sum is = {}", sum);
}
fn return_sum(i: i32, j: i32) -> i32 {
i + j
}
출력:
The sum is = 60