본문 바로가기
개발/Rust

[Rust] 변수 선언

by 77monkey 개발자 2023. 9. 3.
반응형

Rust에서 변수를 선언하는 방법은 다른 언어들과 조금 다릅니다. Rust에서의 변수 선언 방법에 대해서 알아보도록 하겠습니다. 

 

변수 선언

타입 추론

Rust에서 변수를 선언하는 방법은 let 변수명 = 초기값; 입니다.

Rust는 변수  시점에서 타입을 추론하기 때문에, 변수 타입을 명시적으로 작성하지 않아도 됩니다. 

fn main() {
    let x = 5; 
    println!("x = {}", x);
}

x를 5로 선언하게 되면, 저번 데이터 기본 타입 포스팅에서 다뤘던 것처럼 컴파일러는 i32 타입으로 설정하게 됩니다. 변수는 {}을 통해서 출력할 수 있습니다. 출력은 아래와 같이 나오게 됩니다. 

x = 5

 

타입 명시

컴파일러가 추론하지 않고 타입을 명시하여 변수를 선언하는 방법이 있습니다. 타입을 명시하는 방법은 let 변수명: 타입 = 초기값; 으로 합니다.

fn main() {
	let x: i32 = 5;
	println!("x = {}", x);
}

위와 똑같은 코드인데, x의 타입을 i32로 명시하여 i32 타입의 x 변수를 5로 선언합니다. 출력 결과는 아래와 같습니다. 

x = 5

 

가변 변수 선언

Rust는 default로 불변입니다. 그렇기 때문에 가변 변수로 사용하기 위해서는 mut 키워드를 사용해야 합니다. 가변 변수를 선언하는 방법은 let mut 변수명 = 초기값; 입니다. 

fn main() {
    let mut x = 10;
    println!("x = {}", x);
    x = 20;
    println!("x = {}", x);
}

x라는 가변 변수를 10으로 선언을 하고, 출력을 합니다. 그리고 x를 20으로 바꾸고 다시 출력을 합니다. 만약 mut 라는 키워드를 사용하지 않고 x를 10으로 선언했다면, 선언문이 아닌 곳에서 x를 20으로 바꿀 수 없습니다.  출력 결과는 다음과 같습니다. 

x = 10
x = 20

 

상수 선언

상수는 const 상수명: 타입 = 초기값;으로 선언합니다. 반드시 타입을 명시하셔야 합니다. 당연하지만, mut를 사용할 수 없습니다. const는 상수값으로 사용한다는 의미이기 때문입니다. const로 상수를 선언할 경우 상수명은 대문자로 입력하는 것이 관례입니다. 상수는 컴파일 타임에 수행되기 때문에 실행시간에 계산되지 않습니다.

fn main() {
    const YEAR: u32 = 365;
    println!("1 year {} days", YEAR);
}

const로 YEAR 변수를 365로 선언했습니다. 출력을 하면 다음과 같습니다. 

1 year 365 days

 

마무리

Rust에서 변수를 선언하는 방법에 대해서 알아보았습니다. Rust에서 타입 추론을 이용하는 것도 좋지만, 정확하게 원하는 타입으로 선언하기 위해서는 타입 명시를 하는 코딩 습관이 중요하다고 생각합니다. 변수 선언을 하고 변수를 출력할 수 있게 되었으니, 다음 포스팅부터는 자유롭게 예제를 넣도록 하겠습니다.

반응형

'개발 > Rust' 카테고리의 다른 글

[Rust] bool 타입  (0) 2023.09.27
[Rust] if 문  (0) 2023.09.04
[Rust] 데이터 기본 타입  (0) 2023.09.02
[Rust] hello world 출력하기  (0) 2023.09.01
[Rust] Cargo, Cargo 명령어  (0) 2023.08.31