> 백엔드 개발 > Golang > Go 명령줄 매개변수와 표준 입력 및 출력 소개

Go 명령줄 매개변수와 표준 입력 및 출력 소개

풀어 주다: 2020-02-20 17:33:22
앞으로
4195명이 탐색했습니다.

Go 언어는 Google에서 개발한 가비지 수집 기능을 갖춘 정적으로 강력한 유형의 컴파일된 동시 프로그래밍 언어입니다. 다음 열에서는 go 시작하기 자습서 열의 Go 명령줄 매개변수와 표준 입력 및 출력을 소개합니다.

Go 명령줄 매개변수와 표준 입력 및 출력 소개

1. Go 명령줄 매개변수 사용

Go의 명령줄 매개변수는 os.Args 슬라이스에 저장되는데, 이는 Python의 명령줄 매개변수와 매우 유사하다고 할 수 있습니다.

fmt.Println(os.Args)//打印切片内容
for i := 0; i < len(os.Args); i++ {
    fmt.Println(os.Args[i])
}
로그인 후 복사

첫 번째 매개변수는 실행 파일입니다. 파일 이름, 기타 매개변수는 문자열 형식이며 os.Args 슬라이스에 저장되어 있습니다. for range 문

for i, args := range os.Args {
    fmt.Printf("args[%d]=%s\n",i,args)
}
로그인 후 복사

2을 통해 모든 매개변수를 탐색할 수 있습니다. 플래그 패키지로 명령줄 매개변수를 구문 분석합니다

위 매개변수만 구문 분석합니다. 명령줄에서 os.Args 슬라이스에 매개변수를 저장합니다. 특히 다른 사람들이 컴파일된 실행 파일을 사용하는 방법을 모르는 경우 Go의 내장 플래그 패키지를 사용할 수 있습니다. 설명되어 있으며 기본값을 설정할 수 있습니다.

플래그 패키지 사용 방법

flag.Type("flagName",defaultValue,"help message") *Type
로그인 후 복사

플래그 패키지는 Type의 유형과 플래그 flagName 매개변수를 기반으로 플래그 flagName에 대한 기본값과 도움말 정보를 설정하고 최종적으로 해당 유형에 대한 포인터를 반환하는 것을 판단할 수 있습니다. 포인터가 비어 있는지 여부에 따라 명령을 실행합니다. 이 플래그 매개변수를 라인에 사용할지 여부는 다음과 같습니다.

import(
    "flag"
    "fmt"
)
var n = flag.Int("n",1,"number of page")
var s = flag.String("s","nothing","info")
func main() {
    flag.Parse()
    fmt.Println(*n)
    fmt.Println(*s)
}
로그인 후 복사

./cmd –help를 실행하면 설정된 파라미터 도움말 정보를 볼 수 있습니다

일반적으로 파라미터 설정은 메인 함수 시작 전 init 함수에서 사용하기 때문에 메인 함수에서 바로 사용할 수 있습니다

3 . 표준 입력 및 출력

표준 입력 및 출력은 일상적인 프로그램, 일반적으로 읽기, 인쇄 등에 매우 일반적으로 사용됩니다.

표준 입력에서 데이터 읽기

func main() {
    input := bufio.NewScanner(os.Stdin)//初始化一个扫表对象
    for input.Scan() {//扫描输入内容
        line := input.Text()//把输入内容转换为字符串
        fmt.Println(line)//输出到标准输出
    }
}
로그인 후 복사

더 많은 Go 언어 지식을 보려면 PHP 중국어 웹사이트를 참고하세요. 언어 튜토리얼 컬럼으로 이동하세요.

위 내용은 Go 명령줄 매개변수와 표준 입력 및 출력 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
go
원천:csdn.net
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿