Go/Blockchain
[Nomad Coin] Tour of Go - #3.1 Variables in Go
Gopythor
2022. 7. 10. 03:37
728x90
반응형
#3.1 Variables in Go
package main
func main() {
var name string = "nico"
name = 12 // 12는 숫자라서 안된다.
name = "12" // 다른 string으로 업데이트는 가능
name := "nico" // 이렇게 선언도 가능
name = 12 // 숫자는 여전히 불가능
age := 12 //int
age = "12" //string이라서 불가능
}
- var 변수의 이름(name) 변수의 type(string) = 변수의 값(nico)
- name은 항상 string이다.
- 변수에 다른 type의 값을 줄 수 없다.
- 선언 방법은 name := "nico"도 가능, compiler가 자동으로 name의 type이 string임을 인지.
- name의 type은 첫 value의 type이 된다.
- age는 int다.
- =:는 엄청난 shortcut이다. 변수를 만들어주고, 변수 값을 설정해주고, complier에게 변수의 type은 value의 type으로 정의
- =는 업데이트만 가능.
- shortcut을 함수 밖에서는 사용할 수 없다. 함수 밖에서 변수를 만들고 싶으면 긴 syntax 사용.
package main
const name string = "nico"
func main() {
name = "lalala" //const는 수정 불가
}
- name은 변수가 아닌 정수이므로 값 수정 불가.
bool
string
int int8 int16 int32 int64
uint uint8 uint16 uint32 uint64 uintptr
byte // alias for uint8
rune // alias for int32
// represents a Unicode code point
float32 float64
complex64 complex128
- Go에는 bool, string, 많은 숫자들.
- uint8(unsignd integer of 8bits)의 alias인 byte.
- int32(integer of 32bit)의 alias인 rune.
- int는 signed integer이고, uint는 unsigned integer.
- unsigned는 음의 정수가 아닌 양의 정수만 해당(항상 양수).
- int는 -20같이 음의 수가 될 수 있음.
- 64, 32, 16, 8은 이 변수들이 가질 수 있는 숫자의 크기를 의미.
uint8 unsigned 8-bit integers (0 to 255)
uint16 unsigned 16-bit integers (0 to 65535)
uint32 unsigned 32-bit integers (0 to 4294967295)
uint64 unsigned 64-bit integers (0 to 18446744073709551615)
int8 signed 8-bit integers (-128 to 127)
int16 signed 16-bit integers (-32768 to 32767)
int32 signed 32-bit integers (-2147483648 to 2147483647)
int64 signed 64-bit integers (-9223372036854775808 to 9223372036854775807)
- 대부분의 경우는 int사용.
- complier가 최소한 32bit의 숫자를 갖게 해줌.
강의 출처 : 노마드코더(https://nomadcoders.co)
728x90
반응형