>백엔드 개발 >Golang >`fmt.Println`에서 '%'에 대한 Go Vet 경고를 억제하려면 어떻게 해야 합니까?

`fmt.Println`에서 '%'에 대한 Go Vet 경고를 억제하려면 어떻게 해야 합니까?

Barbara Streisand
Barbara Streisand원래의
2024-12-04 04:33:13883검색

How Can I Suppress Go Vet Warnings About '%' in `fmt.Println`?

Println에서 %에 대한 Go Vet 경고 억제

Go에서 fmt.Println을 사용할 때 print 문의 % 문자입니다. 이 경고는 수의사가 의도하지 않은 잠재적인 형식 지시어를 감지할 때 발생합니다.

예를 들어 다음 코드 조각은 경고를 생성합니다.

package main

import (
    "fmt"
)

func main() {
    fmt.Println("%dude")
}

Go vet는 다음을 발행합니다. 경고:

./prog.go:8:2: Println call has possible formatting directive %d

이 경고를 해결하려면 %의 의도된 사용과 형식으로서의 해석을 구별하는 것이 중요합니다. 지시어. 원하는 출력을 유지하면서 이 문제를 해결하는 방법에는 여러 가지가 있습니다.

  1. % 앞에 이스케이프 문자()를 사용하여 백분율 기호를 이스케이프합니다. 이렇게 하면 fmt.Println이 백분율 기호를 형식 지정 지시문이 아닌 리터럴 문자로 처리하도록 지시합니다.
fmt.Println(`%%dude`)
  1. 퍼센트 기호에는 16진수 이스케이프 코드(x25)를 사용합니다.
fmt.Println("%\x25dude")
  1. 대신 fmt.Printf를 사용하세요. fmt.Println, 형식 문자열을 명시적으로 지정합니다.
fmt.Printf("%%%%dude\n")
  1. 형식이 지정된 문자열을 변수에 할당한 다음 fmt.Println을 사용하여 변수를 인쇄합니다.
s := `%%dude`
fmt.Println(s)

이러한 대안 중 하나를 사용하면 go vet 경고를 발생시키지 않고 의도한 출력을 생성할 수 있습니다. 특정 사용 사례에 가장 적합한 접근 방식을 사용하는 것이 좋습니다.

위 내용은 `fmt.Println`에서 '%'에 대한 Go Vet 경고를 억제하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.