본문 바로가기

Dev.../go

매개변수 증가형태 package main import "fmt" var tt int = 5 func add(args ...int) int { total := 0 for _, v := range args { total += v } return total } func main() { fmt.Println(add(1, 2, 3)) } 현재의 프로그램 방식에서 유용하게 매개변수가 증가되는 것을 능동적으로 처리하는 구조로 되어 있다.args의 배열 순서에 맞추어서... range의 형태로 계속 증가되는 구조를 받아들일 수 있다. 더보기
go에서 함수선언 package main import "fmt" var tt int = 5 func f() (int, int) { fmt.Println(tt) return 5, 6 } func main() { t1, t2 := f() fmt.Println(t1, t2) } 함수선언은 위와 같아. 리턴되는 매개변수의 형태도 손쉽게 선언이 된다. 더보기
go map x := make(map[string]int) x["key"] = 10 fmt.Println(x) element := make(map[string]string) element["H"] = "Hydrogen" element["he"] = "Helium" fmt.Println(element["H"]) go에서는 배열보다 유용한 map 선언이 있다. key value의 형태로 만드는 것인데... 이 map을 n차원으로 배열을 만들어서 사용하는 것도 가능하다. ( 메모리 구조의 작업에서도 매우 유용한 처리가 가능하다. ) 더보기
배열 처리 slice1 := []int{1, 2, 3} slice2 := append(slice1, 4, 5) fmt.Println(slice1, slice2) [] 타입으로 배열을 선언하고, append로 배열에 내용의 추가가 가능함. 더보기
go ide는 일단 LiteIDE go 개발을 진행하려 하니.. ide는 필수인듯.몇가지 IDE를 테스트해보고... 일단, golangide를 선택https://code.google.com/p/golangide/ 간단하게 설치되고... c:\go 설치가 아니라 d:\go를 설치했기때문에...View의 Edit Environment에서 설정을 바꾸면...간단한 Go의 코딩이 가능해지고... 'B' - Build'BR' - Build and Run으로 하단의 탭에서 수행결과를 확인할 수 있다. 일단... LiteIDE를 사용하기로함. 더보기
go scanf와 Print package main import "fmt" func main() { fmt.Print("number : ") var input float64 fmt.Scanf("%f", &input) output := input * 2 fmt.Println(output) } 일단, Go는 C처럼 대소문자를 구분하니.. 잘 가려서 입력이 필요하다. 결론적으로 Go관련된 IDE가 별도로 필요한 것이 맞는듯. ~.~ 좌우당간... 첫코드는 Scanf -> Print 의 형태로 코드의 구성이 가능함. 더보기
go에서 const const x string = "hello world" var와 동일함. 더보기
go 에서의 배열 var x2 [6]intx2[4] = 100fmt.Println(x2)배열을 다루는 것도 매우 깔끔하다. x2라는 6개의 정수형 배열을 사용하고fmt.Println으로 그냥 배열을 출력하면[0 0 0 0 100 0] 이렇게 출력된다. 배열도 기본 연산자로 간단하게 표시하고 확인할 수 있다. 더보기
go에서 if if i % 2 == 0 {fmt.Println(i, "even")} else {fmt.Println(i, "odd")}if 문장은 기본 블럭과 else 블럭으로 구분된다. switch i {case 0: fmt.Println("Zero")case 1: fmt.Println("One")case 2: fmt.Println("Two")case 3: fmt.Println("Three")case 4: fmt.Println("Four")case 5: fmt.Println("Five")default: fmt.Println("Unknown Number")} 다중 if를 위한 switch 블럭도 존재한다.switch 구문은 숫자도 되지만, 스트링 형태도 사용이 가능하다.이 부분은 참 매력적이다. 더보기
go에서 for for i 더보기