저작권 안내
- 책 또는 웹사이트의 내용을 복제하여 다른 곳에 게시하는 것을 금지합니다.
- 책 또는 웹사이트의 내용을 발췌, 요약하여 강의 자료, 발표 자료, 블로그 포스팅 등으로 만드는 것을 금지합니다.
함수 사용하기
이재홍 http://www.pyrasis.com 2014.12.17 ~ 2015.02.07
Go 언어로 간단하게 함수를 정의하고 호출해보겠습니다.
- func 함수명() { }
package main
import "fmt"
func hello() { // hello 함수 정의
fmt.Println("Hello, world!")
}
func main() {
hello()
}
Go 언어는 함수 정의를 시작한 줄에서 {
(여는 중괄호)가 시작됩니다. 여는 중괄호를 다음 줄에 작성하면 컴파일 에러가 발생합니다.
package main
import "fmt"
func hello()
{ // 컴파일 에러
fmt.Println("Hello, world!")
}
func main() {
hello()
}
Go 언어는 함수를 정의할 때 위치 제약이 없습니다. C, C++에서는 함수를 호출할 때 해당 함수의 선언이나 정의가 앞에 있어야만 호출할 수 있었습니다.
C 언어
#include <stdio.h>
int main()
{
hello(); // 함수를 찾을 수 없어서 컴파일 에러
}
void hello() // 함수 선언이 뒤에 있으면 안 됨
{
printf("Hello, world!");
}
이렇게 hello 함수 정의가 뒤에 있으면 main 함수는 hello 함수를 찾을 수 없기 때문에 컴파일 에러가 발생합니다.
Go 언어는 함수 정의가 어디에 있든 상관없이 함수를 호출할 수 있습니다. 다음과 같이 hello 함수가 main 함수보다 뒤에 있어도 컴파일 에러가 발생하지 않습니다.
package main
import "fmt"
func main() {
hello() // 컴파일 잘 됨
}
func hello() { // 함수 선언 위치는 중요하지 않음
fmt.Println("Hello, world!")
}
실행 결과
Hello, world!
저작권 안내
이 웹사이트에 게시된 모든 글의 무단 복제 및 도용을 금지합니다.- 블로그, 게시판 등에 퍼가는 것을 금지합니다.
- 비공개 포스트에 퍼가는 것을 금지합니다.
- 글 내용, 그림을 발췌 및 요약하는 것을 금지합니다.
- 링크 및 SNS 공유는 허용합니다.