@historydev
Острая аллергия на анимешников

Почему байт в строку выводит пустоту или какие-то смайлики?

Задача реализовать метод String() string который выведет ip через точку 1.2.3.4, в гугле всё однотипное:

result := string(ip[:]) - не работает
Вот такое сейчас получаю: ...☺.

package main

import "fmt"

type IPAddr [4]byte

func (ip IPAddr) String() string {
	var result string
	for _, val := range ip {
		fmt.Println(string(val))
		result += string(val) + "."
	}
	return result
}

// TODO: Add a "String() string" method to IPAddr.

func main() {
	hosts := map[string]IPAddr{
		"loopback":  {127, 0, 0, 1},
		"googleDNS": {8, 8, 8, 8},
	}
	for name, ip := range hosts {
		fmt.Printf("%v: %v\n", name, ip)
	}
}
  • Вопрос задан
  • 109 просмотров
Решения вопроса 1
@micronull
Надо воспользоваться функцией `Itoa`.
result += strconv.Itoa(int(val)) + "."
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы