Go 언어의 문법적 특징
//while (true)
func for_v2(){
for {
}
}
//while (sum < 1000)
func for_v2(){
sum := 1
for sum < 1000 {
sum += sum
}
fmt.Println(sum)
}
//for (i=0;i<10;i++)
for i:=0;i<10;i++{
}
For 문의 3가지 사용법
//while (true)
func if_v1(){
test := 0
if test <= 0{
}
if t:=0; t <= 0{
}
}
if 문
//기본형태
func func_v1(){
}
//반환값이 있는경우
func func_v2() string {
}
//반환값이 2개 이상 있는경우
func func_v3() (string, string) {
return "a","b"
}
//반환값이 3개 이상 있는경우!
func func_v4() (string, string, string) {
return "a","b","c"
}
//반환값이 이름을 가지는 경우
func func_v4() (return_value string) {
return_value = "????"
return
}
함수의 특징
//인자값이 1개 있는경우
func func_v1(a string){
}
//인자가 2개인데 인자의 타잎이 같은경우
func func_v2(a, b string) {
}
//인자가 2개인데 인자의 타잎이 다른경우
func func_v3(a int, b string) {
}
func func_v3(a ,b, c int, d string) {
}
Type Casting
//type casting
//타잎명(변수)
func test(){
a := 1111
a_f := float(a)
a_uint := uint(a)
}
func test_string(){
a := "asdasdasd"
a_byte := []byte(a)
}
defer
//defer 함수
func a() {
i := 0
defer fmt.Println(i)
i++
return
}
func b() {
a = file.open("a.txt")
if ... {
return
}
a = file.open("a.txt")
if ... {
return
}
if ... {
return
}
a = file.open("a.txt")
if ... {
return
}
if ... {
return
}
if ... {
return
}
if ... {
return
}
}
close 와 같은 함수가 끝나기 전에 꼭 실행되야 하는 것을 defer 로 등록한다!