티스토리 뷰
rust는 type명시형 언어이다
컴파일 시 반드시 데이터타입이 정해져 있어야 된다.
rust의 타입은 크게 스칼라와 컴파운드 둘로 나뉜다.
스칼라 타입
스칼라는 하나의 값으료 표현되는 타입이다.
Rust는 정수형, 부동소수점, 숫자, 문자, boolean 네가지 스칼라 타입을 보유하고 있다.
1. 정수형
소수점이 없는 숫자이다.
-(2^n - 1) ~ (2^n-1 - 1) 의 범위이다(n: 비트)
Length | Signed | Unsigned |
8비트 | i8 | u8 |
16비트 | i16 | u16 |
32비트 | i32 | u32 |
64비트 | i64 | u64 |
arch | isize | usize |
2. 부동 소수점 타입
f32, f64가 있다.
각각 32비트, 64비트이며 float 타입이라고 이해하면 된다.
3. boolean 타입
true, false를 가진다.
let f: bool = false;
4. 문자 타입
char형태
let c = 'char';
컴파운드 타입
다른 타입의 다양한 값을 하나의 타입에 묶을 수 있다.
튜플과 배열이 있다.
1. 튜플
아래의 형태로 복합적인 타입으로 선언이 가능하다.
pub fn tuple() -> i32 {
let tup = (500, 6.4, 1);
let (x, y, z) = tup;
return x;
}
2. 배열
하나의 배열에는 하나의 타입만 선언 가능하다.
배열 요소에는 인덱스로 접근이 가능하다.
유효범위에서 벗어날 경우 당연히 stack overflow 오류가 발생한다.
참고 : rinthel.github.io/rust-lang-book-ko/ch03-02-data-types.html
데이터 타입들 - The Rust Programming Language
Rust에서 사용되는 모든 값들은 어떤 타입을 갖습니다. 그러니 어떤 형태의 데이터인지 명시하여 Rust에게 알려줘서 이를 통해 데이터를 어떻게 다룰지 알 수 있도록 해야 합니다. 이번 장에서, 우
rinthel.github.io
'Rust-Language' 카테고리의 다른 글
참조자와 빌림 (0) | 2021.04.03 |
---|---|
소유권(Ownership) (0) | 2021.04.02 |
제어문 (0) | 2021.03.30 |
함수 (0) | 2021.03.30 |
변수 (0) | 2021.03.30 |