github.com/maikovskiys/l1tasks@v0.0.0-20230927052451-6436d7687dc9/develop/dev15/main.go (about) 1 package main 2 3 import "fmt" 4 5 /* 6 К каким негативным последствиям может привести данный фрагмент кода, и как это исправить? Приведите корректный пример реализации. 7 8 var justString string 9 func someFunc() { 10 v := createHugeString(1 << 10) 11 justString = v[:100] 12 } 13 14 func main() { 15 someFunc() 16 } 17 18 */ 19 var justString string //не надо использовать глобальные переменные 20 21 func main() { 22 justString := `ko qwwyefhwehf8 832 jhu u89U Q 89 ujH Dpqh hhjhdwh udhwudh widjwndjshduwu 23 iewj di jwfijwpdhw8cuwj2837r832u rjefjwneknwejd dsjcuhv rhe 24 оывмвосрыгурствс ввшсшвосоывосш лоыыовгмсцвосыоо ji ejwfljeofij8u j.` 25 26 hugeStringByte := []byte(justString) 27 justStringByte := hugeStringByte[:100] // этот срез, для того, чтобы указать диапазон данных, например [23:28] 28 newSlice := make([]byte, len(justStringByte)) // создаем пустой срез с заданной длиной 29 copy(newSlice, hugeStringByte) // копируем и возвращаемся из функции 30 fmt.Println(newSlice) 31 32 }