ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • golang 데이터 타입
    Language/Go 2019. 12. 13. 16:37

    1. 데이터 타입

    자료형 범위  
    uint8 0 ~ 255 부호 없는 8비트 정수형
    uint16 0 ~ 65,535  부호 없는 16비트 정수형
    uint32 0 ~ 4,294,967,295  부호 없는 32비트 정수형
    uint64 0 ~ 18,446,744,073,709,551,615 부호 없는 64비트 정수형
    uint   32비트 시스템에서는 uint32, 64비트 시스템에서는 uint64
    int8 -128 ~ 127  부호 있는 8비트 정수형 
    int16 -32,768 ~ 32,767  부호 있는 16비트 정수형
    int32 -2,147,483,648 ~ 2,147,483,647 부호 있는 32비트 정수형
    int64 -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807 부호 있는 64비트 정수형
    int   32비트 시스템에서는 int32, 64비트 시스템에서는 int64
    float32   IEEE-754 32비트 부동소수점, 7자리 정밀도
    float64   IEEE-754 64비트 부동소수점, 12자리 정밀도
    complex64   float32 크기의 실수부와 허수부로 구성된 복소수
    complex128   float64 크기의 실수부와 허수부로 구성된 복소수
    uintptr   uint와 같은 크기를 갖는 포인터형
    bool   참, 거짓을 표현하기 위한 8비트 자료형
    byte   8비트 자료형
    rune   유니코드 저장을 위한 자료형, 크기는 int32와 동일
    string   문자열을 저장하기 위한 자료

    2. 데이터 타입 변환

    데이터 타입을 변환하기 위해서는 Type(value) 와 같이 표현합니다

    아래는 소스 코드와 출력 결과 입니다.

    package main
    
    func main() {
      var i int = 10
      var u uint = uint(i)
      var f float32 = float32(u)
      println(f, u)
    
      strA := "marubao"
      bytes := []byte(strA)
      strB := string(bytes)
      println(bytes, strB)                                                                                                                                                                                                                                                        
    }
    [marubao@localhost go]$ go run src/main.go 
    +1.000000e+001 10
    [7/32]0xc000034720 marubao

    주의 할 점은 Go는 int에서 uint로 변환 할때도 암묵전 변환이 일어나지 않으므로 반드시 uint(i) 처럼 변환 타입을 지정해 주어야 합니다.

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

    golang 반복문  (0) 2020.02.08
    golang 변수선언  (0) 2019.11.30
    CentOS7에 Go 언어 설치  (0) 2019.10.28

    댓글

2017 TIFY Team All Rights Reserved.