Назад к вопросам
Senior
8
// Вопрос 1. Что выведет на экран? package main import "fmt" func main() { s := "Hello world" b := []byte(s) b[0] = "h" s = string(b) fmt.Println(s) }
Компании, где спрашивали
МВидео/эльдорадо
Ответ от нейросети
sobes.tech AI
В коде есть ошибка компиляции. В строке b[0] = "h" пытаются присвоить байту символ в двойных кавычках, что в Go означает строку, а не байт.
Правильно нужно использовать одинарные кавычки для символа:
b[0] = 'h'
Если исправить эту строку, программа выведет:
hello world
Пояснение: строка s преобразуется в срез байт b, затем первый байт меняется с 'H' на 'h', после чего срез байт обратно преобразуется в строку и выводится.