Go 언어 입문 Go!!!
데스크톱에 Hello 디렉터리를 만듭니다.
이 디렉터리에main을 만듭니다.go 파일:
package main // main ,
import "fmt" // fmt
func main(){ // main ,
fmt.Println("Hello World!") // Hello World!
}
gobuild은 원본 코드를 실행 가능한 파일로 컴파일하는 것을 표시합니다.
hello 디렉토리에서 다음을 수행합니다.
go build
또는 다른 디렉토리에서 다음 명령을 실행합니다.
go build hello
우리는 또한 -o 파라미터를 사용하여 컴파일된 실행 가능한 파일의 이름을 지정할 수 있다.
go build -o heiheihei.exe
키워드
Go 언어에는 25개의 키워드가 있습니다.
break default func interface select
case defer go map struct
chan else goto package switch
const fallthrough if range type
continue for import return var
변량
Go 언어의 변수 선언 형식은 다음과 같습니다.
var
:
var name string
var age int
var isOk bool
대량 선언
var (
a string
b int
c bool
d float32
)
할당액
var 변수 이름 유형 = 표현식
예를 들면 다음과 같습니다.
var name string = "Q1mi"
var age int = 18
때때로 우리는 변수의 유형을 생략할 수 있으며, 이때 컴파일러는 등호 오른쪽의 값에 따라 변수의 유형을 초기화할 수 있다.
var name = "Q1mi"
var age = 18
var name, age = "Q1mi", 18
짧은 변수 선언
함수 내부에서 더 간략한: = 방식으로 변수를 설명하고 초기화할 수 있습니다.
package main
import (
"fmt"
)
// m
var m = 100
func main() {
n := 10
m := 200 // m
fmt.Println(m, n)
}
익명 변수
다중 할당 값을 사용할 때, 어떤 값을 무시하려면 익명 변수 (anonymous variable) 를 사용할 수 있습니다.익명 변수에 밑줄표현(예:
func foo() (int, string) {
return 10, "Q1mi"
}
func main() {
x, _ := foo()
_, y := foo()
fmt.Println("x=", x)
fmt.Println("y=", y)
}
(익명 변수는 이름 공간을 차지하지 않고 메모리를 분배하지 않기 때문에 익명 변수 사이에 중복 성명이 존재하지 않습니다.)
변수 요약
참고 사항:
상수
변수에 비해 상수는 고정불변의 값으로 프로그램이 실행되는 동안 변하지 않는 값을 정의하는 데 많이 사용된다.상수 성명과 변수 성명은 매우 유사합니다. var을const로 바꾸었을 뿐입니다. 상수는 정의할 때 반드시 값을 부여해야 합니다.
const pi = 3.1415
const e = 2.7182
pi와 e 두 상수를 설명한 후, 프로그램 전체가 실행되는 동안, 그것들의 값은 더 이상 변할 수 없습니다.
여러 상수를 함께 선언할 수도 있습니다.
const (
pi = 3.1415
e = 2.7182
)
const가 여러 상수를 동시에 설명할 때, 값을 생략하면 위 줄의 값과 같습니다.예를 들면 다음과 같습니다.
const (
n1 = 100
n2
n3
)
상기 예시에서 상량 n1, n2, n3의 값은 모두 100이다.
iota
iota는 go 언어의 상수 계수기로서 상수 표현식에서만 사용할 수 있습니다
iota는 const 키워드가 나타날 때 0으로 초기화됩니다
const에 추가된 줄 상수 성명은 iota를 한 번 계산합니다 (iota는 const 문장 블록의 줄 인덱스로 이해할 수 있습니다)
iota를 사용하면 정의를 간소화할 수 있으며 매거진을 정의할 때 매우 유용하다.
예를 들면 다음과 같습니다.
const (
n1 = iota //0
n2 //1
n3 //2
n4 //3
)
const (
n1 = iota //0
n2 //1
_
n4 //3
)
const (
n1 = iota //0
n2 = 100 //100
n3 = iota //2
n4 //3
)
const n5 = iota //0
수량 레벨 정의(이곳의<
const (
_ = iota
KB = 1 << (10 * iota)
MB = 1 << (10 * iota)
GB = 1 << (10 * iota)
TB = 1 << (10 * iota)
PB = 1 << (10 * iota)
)
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.