Today
-
Yesterday
-
Total
-
  • Go : 자료형 및 변수, 상수
    Language/고 Go 2023. 12. 17. 00:01

    참고


    자료형

    정수 : 0

    • 부호 있는 정수형
      • int, int8, int16, int32, int64
      • int는 32bit 시스템에서는 int32, 64bit 시스템에서는 int64

    • 부호 없는 정수형
      • uint, uint8, uint16, uint32, uint64
      • uint는 32bit 시스템에서는 uint32, 64bit 시스템에서는 uint64

    • uint와 같은 크기를 갖는 포인터형
      • uintptr

    실수 : 0.0

    • float32
      • 32비트 부동 소수점
      • 7자리 정밀도
    • float64
      • 64비트 부동 소수점
      • 12자리 정밀도

    복소수

    • complex64, complex128

    문자열 : ""

    • string

    바이트

    • byte
    • uint8 과 동일

    유니코드 코드포인트

    • rune
    • int32와 동일

    논리 : true / false

    • bool

     

    변수명 규칙

    • 첫글자로 숫자 안됨
    • 대소문자 구분
    • 문자, 숫자, 밑줄, 특수문자 허용

     

    변수 선언 방법

    default

    • var 변수명 자료형 = 초기화
    • var 변수명 자료형

    - var 변수명1, 변수명2, .. , 변수명N = 값1, 값2, ... , 값N
    ### 자료형 추론 - var 변수명 = 초기화 - var 변수명
    - var 변수명1, 변수명2, .. 변수명N
    ### - 사용 예시 1 ```go package main

    import "fmt"

    func var1() {

    var a int = 4
    var c, d, e int
    var f, g, h int = 1, 2, 3
    var i float32 = 11.4
    var j string = "go lang"
    var k = 4.74 
    var l = "Hi 고!"
    var m = true
    
    c = 11
    d = 21
    e = 31
    
    fmt.Println("a : ", a,
    	"\nc : ", c,
    	"\nd : ", d,
    	"\ne : ", e,
    	"\nf : ", f,
    	"\ng : ", g,
    	"\nh : ", h,
    	"\ni : ", i,
    	"\nj : ", j,
    	"\nk : ", k,
    	"\nl : ", l,
    	"\nm : ", m)
    

    }

    <br>	
    
    ### - 사용 예시 2
    ```go
    package main
    
    import "fmt"
    
    func var2() {
    	var (
    		name      string = "zhyun"
    		height    int32
    		weight    float32
    		isRunning bool
    	)
    
    	height = 500
    	weight = 100.01
    	isRunning = true
    
    	fmt.Println("name : ", name)
    	fmt.Println("height : ", height)
    	fmt.Println("weight : ", weight)
    	fmt.Println("isRunning : ", isRunning)
    }
    

    짧은 선언 방식

    • 변수명 := 초기화
      • 반드시 함수 안에서 사용해야 한다.
      • 이렇게 생성된 변수는 선언 이후에 다시 값을 할당하려고 할 경우 예외가 발생한다.
      • 주로 제한된 범위의 함수 내에서 사용할 경우에 코드 가독성을 높일 수 있다.

    - 사용 예시

    if i := 10; i < 11 {
      fmt.Println("Short Variable Test Success!")
      
      i++
      fmt.Println("i = ", i) // i = 11
    }    

     

    상수 선언 및 사용 방법

    • const 변수명 자료형 = 값
    • const 변수명1, 변수명2, .., 변수명n 자료형 = 값1, 값2, .., 값n
    • const 변수명 = 값
    • const 변수명1, 변수명2, .., 변수명n = 값1, 값2, .., 값n

    변수와의 차이점은

    1. 한번 선언 후 값 변경이 불가하다는 점
    2. 선언 시 초기화를 필수적으로 해줘야 하는 점
    3. 함수의 반환 값을 상수 변수에 할당할 수 없다는 점

    이다.

    - 사용 예시

    package main
    
    import "fmt"
    
    func const2() {
        const a, b int = 10, 99
        const c, d, e = true, 0.84, "test"
      
        const (
            f    = 3.14
            g, z = "gim", "zhyun"
        )
      
        fmt.Println("a : ", a)
        fmt.Println("b : ", b)
        fmt.Println("c : ", c)
        fmt.Println("e : ", e)
        fmt.Println("d : ", d)
        fmt.Println("f : ", f)
        fmt.Println("g : ", g)
        fmt.Println("z : ", z)
    }



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

    Go : Switch 조건문  (0) 2023.12.17
    Go : if 조건문  (0) 2023.12.17
    Go : 열거형 상수  (0) 2023.12.17
    Go : 여러개의 멀티 프로젝트 실행  (0) 2023.12.17
    Go : Windows11에서 Go 환경 셋팅  (0) 2023.12.17

Designed by Tistory / Custom by 얼거스