백엔드 개발 Golang golang 기본 변환

golang 기본 변환

May 16, 2023 pm 01:13 PM

golang은 강력한 기능과 간결한 구문으로 인해 점점 더 많은 개발자가 선택하는 매우 뛰어난 프로그래밍 언어입니다. golang에서 염기변환은 매우 기본적이고 흔히 사용되는 연산입니다. golang의 염기변환에 대해 알아봅시다.

golang에서 일반적으로 사용되는 진수는 2진수, 8진수, 10진수, 16진수입니다. 이러한 다양한 베이스를 변환하는 방법을 살펴보겠습니다.

1. 십진수를 다른 진수로 변환

golang에서는 fmt 패키지의 FormatInt 함수를 사용하여 십진수를 지정된 진수의 문자열로 변환할 수 있습니다. 이 함수의 프로토타입은 다음과 같습니다.

func FormatInt(i int64, base int) string
로그인 후 복사

여기서 i는 변환해야 하는 십진수를 나타내고 base는 대상 진수(2, 8, 10 또는 16)입니다. 예를 들어 십진수 18을 이진수로 변환하려면 코드는 다음과 같습니다.

package main

import (
    "fmt"
    "strconv"
)

func main() {
    n := int64(18)
    b := strconv.FormatInt(n, 2)
    fmt.Printf("2进制:%s
", b)
}
로그인 후 복사

실행 결과는 다음과 같습니다.

2进制:10010
로그인 후 복사

위 코드에서 strconv의 FormatInt 함수를 사용하여 십진수 18을 이진수 문자열로 변환합니다. 그리고 인쇄하면 나옵니다.

마찬가지로 밑수 매개변수를 변경하여 십진수를 다른 밑수로 변환할 수 있습니다. 예를 들어, 18진수를 8진수나 16진수로 변환하려면 코드는 다음과 같습니다.

package main

import (
    "fmt"
    "strconv"
)

func main() {
    n := int64(18)
    o := strconv.FormatInt(n, 8)
    h := strconv.FormatInt(n, 16)
    fmt.Printf("8进制:%s
", o)
    fmt.Printf("16进制:%s
", h)
}
로그인 후 복사

실행 결과는 다음과 같습니다.

8进制:22
16进制:12
로그인 후 복사

2. 다른 진수를 10진수로 변환합니다.

golang에서는 ParseInt 함수를 사용할 수 있습니다. 변환할 strconv 패키지는 숫자의 문자열 표현을 10진수로 변환합니다. 이 함수의 프로토타입은 다음과 같습니다.

func ParseInt(s string, base int, bitSize int) (i int64, err error)
로그인 후 복사

그중 s는 변환할 문자열을 나타내고, base는 s의 밑수를 나타내며 0, 2, 8, 10 또는 16이 될 수 있으며, bitSize는 변환할 자릿수를 나타냅니다. 결과는 0 또는 8, 16, 32 또는 64일 수 있습니다. 예를 들어 이진수 10010을 십진수로 변환하려면 코드는 다음과 같습니다.

package main

import (
    "fmt"
    "strconv"
)

func main() {
    b := "10010"
    n, _ := strconv.ParseInt(b, 2, 64)
    fmt.Printf("10进制:%d
", n)
}
로그인 후 복사

실행 결과는 다음과 같습니다.

10进制:18
로그인 후 복사

위 코드에서 strconv의 ParseInt 함수를 사용하여 이진수 문자열을 십진수로 변환하고 인쇄해 보세요.

마찬가지로, 다른 진수의 문자열을 십진수로 변환할 수 있습니다. 단지 염기 매개변수만 변경하면 됩니다. 예를 들어 8진수 문자열 "22" 또는 16진수 문자열 "12"를 10진수로 변환하는 경우 코드는 다음과 같습니다.

package main

import (
    "fmt"
    "strconv"
)

func main() {
    o := "22"
    h := "12"
    on, _ := strconv.ParseInt(o, 8, 64)
    hn, _ := strconv.ParseInt(h, 16, 64)
    fmt.Printf("8进制:%d
", on)
    fmt.Printf("16进制:%d
", hn)
}
로그인 후 복사

실행 결과는 다음과 같습니다.

8进制:18
16进制:18
로그인 후 복사

위 코드에서 볼 수 있듯이 10진수 golang 변환은 매우 쉽습니다. Golang 개발 작업에는 염기 변환에 능숙한 것이 필수적입니다.

위 내용은 golang 기본 변환의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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

뜨거운 기사 태그

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

Go Language Pack 가져 오기 : 밑줄과 밑줄이없는 밑줄의 차이점은 무엇입니까? Go Language Pack 가져 오기 : 밑줄과 밑줄이없는 밑줄의 차이점은 무엇입니까? Mar 03, 2025 pm 05:17 PM

Go Language Pack 가져 오기 : 밑줄과 밑줄이없는 밑줄의 차이점은 무엇입니까?

이동 중에 테스트를 위해 모의 개체와 스터브를 작성하려면 어떻게합니까? 이동 중에 테스트를 위해 모의 개체와 스터브를 작성하려면 어떻게합니까? Mar 10, 2025 pm 05:38 PM

이동 중에 테스트를 위해 모의 개체와 스터브를 작성하려면 어떻게합니까?

Beego 프레임 워크에서 페이지간에 단기 정보 전송을 구현하는 방법은 무엇입니까? Beego 프레임 워크에서 페이지간에 단기 정보 전송을 구현하는 방법은 무엇입니까? Mar 03, 2025 pm 05:22 PM

Beego 프레임 워크에서 페이지간에 단기 정보 전송을 구현하는 방법은 무엇입니까?

GO에서 제네릭에 대한 사용자 정의 유형 제약 조건을 어떻게 정의 할 수 있습니까? GO에서 제네릭에 대한 사용자 정의 유형 제약 조건을 어떻게 정의 할 수 있습니까? Mar 10, 2025 pm 03:20 PM

GO에서 제네릭에 대한 사용자 정의 유형 제약 조건을 어떻게 정의 할 수 있습니까?

추적 도구를 사용하여 GO 응용 프로그램의 실행 흐름을 이해하려면 어떻게해야합니까? 추적 도구를 사용하여 GO 응용 프로그램의 실행 흐름을 이해하려면 어떻게해야합니까? Mar 10, 2025 pm 05:36 PM

추적 도구를 사용하여 GO 응용 프로그램의 실행 흐름을 이해하려면 어떻게해야합니까?

편리하게 GO 언어로 파일을 작성하는 방법? 편리하게 GO 언어로 파일을 작성하는 방법? Mar 03, 2025 pm 05:15 PM

편리하게 GO 언어로 파일을 작성하는 방법?

Linters 및 정적 분석 도구를 사용하여 GO 코드의 품질과 유지 관리를 향상시킬 수 있습니까? Linters 및 정적 분석 도구를 사용하여 GO 코드의 품질과 유지 관리를 향상시킬 수 있습니까? Mar 10, 2025 pm 05:38 PM

Linters 및 정적 분석 도구를 사용하여 GO 코드의 품질과 유지 관리를 향상시킬 수 있습니까?

MySQL 쿼리 결과 목록을 GO 언어로 사용자 정의 구조 슬라이스로 변환하는 방법은 무엇입니까? MySQL 쿼리 결과 목록을 GO 언어로 사용자 정의 구조 슬라이스로 변환하는 방법은 무엇입니까? Mar 03, 2025 pm 05:18 PM

MySQL 쿼리 결과 목록을 GO 언어로 사용자 정의 구조 슬라이스로 변환하는 방법은 무엇입니까?

See all articles