ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 4장. Rust 데이터 타입
    Language/Rust 2020. 7. 5. 21:20

    1. 데이터 타입

    Rust는 타입이 고정된 언어입니다.

    따라서 컴파일 할 때 변수의 타입이 정해져 있어야 합니다.

    보통 타입을 추측할 수 있지만 String 타입을 parse로 숫자형으로 바꿨다면 타입을 지정해 주어야 합니다.

     

    아래의 예시처럼 32bit 정수형이라고 타입을 지정하면 컴파일 에러가 나지 않습니다.

    따라서 필요에 따라 타입을 지정해야 합니다.

     

    1) 스칼라 타입

    스칼라 타입은 하나의 값으로 표현되는 타입입니다.

     

    - 정수형 : 소수점이 없는 숫자.

     

    <정수의 타입>

    길이 부호 있음
    (음수, 양수)
    부호 없음
    (양수)
    8bit i8 u8
    16bit i16 u16
    32bit i32 u32
    64bit i64 u64
    arch isize usize

    isize와 usize타입은 컴퓨터가 32bit이냐 64bit이냐에 따라 결정됩니다.

     

    <정수형 리터럴>

    리터럴 예시
    Decimal 98_222
    Hex 0xff
    Octal 0o77
    Binary  0b1111_0000
    Byte(u8) b'A'

     

    - 부동소수점

    부동소수점도 f32, f64로 두 가지 타입을 가지고 있습니다.

    기본타입은 f64이고 f32와 비슷한 속도를 내고 정밀한 표현이 가능합니다.

     

    - boolean

    true, false값을 가지며 Rust에서는 bool으로 명시합니다.

     

    - 문자

    Rust의 char타입은 유니코드 스칼라를 표현하는 값이며, 이는 아스키보다 더 많은 문자를 표현할 수 있습니다.

    *String은 다음 장인 컬렉션에서 다루도록 하겠습니다.

     

    2) 복잡 타입

    다른 타입들의 다양한 값들을 하나로 묶은 타입입니다.

     

    - 튜플 : 다양한 타입의 값들을 하나로 묶은 타입입니다.

     

     (1) 패턴 매칭으로 구조해체 시켜 값 추출하기

       튜플의 각 값들을 x, y, z에 대입시켜 원하는 값을 추출합니다.

    실행 결과 x, y변수를 쓰지 않고 있다고 경고가 나오지만 일단 무시하겠습니다.

    y값 6.4가 제대로 추출되는 것을 확인 할 수 있습니다.

     

     (2) 인덱스로 값 추출하기

       튜플.인덱스 로 원하는 튜플에 직접 접근할 수 있습니다. (첫 번째 색인은 0부터 시작합니다)

     

    - 배열 : 같은 타입의 값들을 하나로 묶은 타입입니다.

    러스트에서 배열은 고정된 길이의 값만 갖고, 줄어들거나 늘어나지 않습니다.

    따라서 month 같이 추가 되거나 삭제될 가능성이 없는 것들을 배열로 만듭니다.

     

    'Language > Rust' 카테고리의 다른 글

    3장. Rust 변수  (1) 2020.06.08
    2장. Cargo 기본 명령어  (1) 2020.06.02
    1장(보충). Rust 확장 파일 추가 설치 및 디버깅  (0) 2020.05.28
    1장. Rust 개발 환경 구축하기  (0) 2020.05.28

    댓글

Designed by Tistory.