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 로 등록한다!

Made with Slides.com