42
러닝 Go
2.1.1
제로 값
Go
는 대부분의 최신 언어들과 마찬가지로, 선언되었지만 값이 할당되지 않은 모든 변수에 기
본값인 제로 값
zero
value
을 할당한다. 명시적으로 제로 값을 넣는 것은 코드를 더 명확하게 하고
C
와
C
++ 프로그램에서 발견된 소스의 버그들을 제거한다. 각 타입에 대해 설명하면서, 타입
별로 제로 값을 다루어보자.
2.1.2
리터럴
Go
에서 리터럴은 숫자, 문자 혹은 문자열을 쓰는 것을 나타낸다.
Go
프로그램에서 찾아볼
수 있는 리터럴은 일반적으로 네 가지가 있다(드물게 사용되는
5
번 째 리터럴은 복소수
complex
number
를 다룰 때 확인해 볼 것이다 ).
정수
integer
리터럴은 일련의 숫자이다. 일반적으로
10
진수를 의미하지만 다른 접두사를 사용하
여 진법을 변경하여 사용할 수 있다.
0b
는 이진수이고,
0o
는
8
진수를,
0x
는
16
진수로 만들 수
있다. 접두사로 대문자 혹은 소문자를 사용할 수도 있다. 문자 없이
0
으로 시작하는 숫자는
8
진 리터럴을 표현하는 또 다른 방법이지만 혼동이 있을 수 있어 사용하지 않길 바란다.
긴 정수 리터럴을 더 읽기 쉽게 만들기 위해
Go
는 정수 리터럴 사이에 밑줄을 넣는 것을 허용
한다. 예를 들어,
10
진수를 천의 단위로 그룹을 구분하기 위해서 (
1
_
234
)와 같이 사용할 수
있다는 것이다. 해당 밑줄은 숫자 값 자체에는 어떠한 영향도 주지 않는다. 제한 사항이 있다면
숫자의 맨 앞이나 맨 뒤에 넣을 수 없고 다른 숫자와 연결되게 사용해서는 안 된다는 ...