Исходники и презентации
This commit is contained in:
29
lessons/strings/conversion_deprecated/main.go
Normal file
29
lessons/strings/conversion_deprecated/main.go
Normal file
@ -0,0 +1,29 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"unsafe"
|
||||
)
|
||||
|
||||
/*
|
||||
type SliceHeader struct {
|
||||
Data unsafe.Pointer
|
||||
Len int
|
||||
Cap int
|
||||
}
|
||||
|
||||
type StringHeader struct {
|
||||
Data unsafe.Pointer
|
||||
Len int
|
||||
}
|
||||
*/
|
||||
|
||||
func ToStringDeprecated(data []byte) string {
|
||||
return *(*string)(unsafe.Pointer(&data))
|
||||
}
|
||||
|
||||
func main() {
|
||||
data := []byte{'h', 'e', 'l', 'l', 'o'}
|
||||
str := ToStringDeprecated(data)
|
||||
fmt.Println(str)
|
||||
}
|
||||
Reference in New Issue
Block a user