변수 and 상수 : 값을 저장하는 메모리 공간을 가리키는 이름.
컴퓨터의 저장소는 HDD, Memory 두 가지가 있다. CPU에서 값을 불러오는 저장소는 memory. 이때 변수는 특정 값을 가르키는 이름이 되는 것이다.
프로그램은 결국 데이터를 연산/ 조작 하는 일이다.
변수
는 한 번 선언 후 값이 계속 변경 가능하다. 변수는 variable 약자 var
선언 후 사용한다.
상수
는 변수와 다르게 값이 고정 된다. 따라서 상수 선언은 constant 약자 const
선언 후 사용한다. 불편하게 느낄 수 있지만 절대 변하면 안 되는 값을 고정해 두기 위한 안전 장치가 될 수 있다. 예를들어 원주율, 기준이 되는 절대값 표시.. 등에 사용한다.
package main
import "fmt"
func main() {
var a int = 10
var msg string = "Hellow"
const num int = 1
a = 20
msg = "golang"
// num = 10 (X) 상수는 선언 후 값 변경 불가능.
fmt.Println(msg, a)
fmt.Println(num)
}
var(variable)
a
int(integer)
10
이미 선언한 변수 값을 변경할 때는 변수명
대입연산자
값
(a = 20) 만 입력하면 된다.
var a int = 10
var a int
var a = 10
a:= 10
가장 기본적인 선언 방법은 선언과 초기값을 동시에 적어주는 방법이다.
go 언어는 python 과 다르게 변수 타입을 작성해야 함으로 타입을 입력하지 않을 시에는 초기값을 입력해야 한다.
마지막 선언방법은 := 선언대입문
으로
가장 단순하게 선언하는 방법이다.
(변수 선언도 이와같다.)
var a int
선언만하고 초기 값을 입력 안하면 기본 초기값이 할당되는데 각 타입마다 아래와 같이 기본 값이 할당된다.
Types | 기본 값 |
---|---|
모든 정수 타입 | 0 |
모든 실수 타입 | 0.0 |
Boolean | False |
Integer | "" |
그 외 | nil (정의 되지 않는 메모리 주소를 나타내는 Go 키워드) |