Назад к вопросам
Junior
115
questionbank

Как преобразовать строку в целое число и наоборот?

Sobes Copilot

Получайте ответы в реальном времени

Ответ от нейросети

sobes.tech AI

Для преобразования строки в целое число используется пакет strconv.

import (
	"fmt"
	"strconv"
)

func main() {
	s := "123"
	i, err := strconv.Atoi(s) // Atoi - сокращение от ASCII to integer
	if err != nil {
		fmt.Println("Ошибка преобразования:", err)
		return
	}
	fmt.Printf("Строка \"%s\" преобразована в число %d\n", s, i)

	// Преобразование в int64
	s64 := "9223372036854775807"
	i64, err := strconv.ParseInt(s64, 10, 64) // строка, система счисления, размерность (0, 8, 16, 32, 64)
	if err != nil {
		fmt.Println("Ошибка преобразования:", err)
		return
	}
	fmt.Printf("Строка \"%s\" преобразована в число %d (int64)\n", s64, i64)
}

Для преобразования целого числа в строку также используется пакет strconv.

import (
	"fmt"
	"strconv"
)

func main() {
	i := 123
	s := strconv.Itoa(i) // Itoa - сокращение от integer to ASCII
	fmt.Printf("Число %d преобразовано в строку \"%s\"\n", i, s)

	// Преобразование int64 в строку
	i64 := int64(9223372036854775807)
	s64 := strconv.FormatInt(i64, 10) // число, система счисления
	fmt.Printf("Число %d (int64) преобразовано в строку \"%s\"\n", i64, s64)
}