分享
golang的指针到string,string到指针的转换
ziyouchutuwenwu · · 11411 次点击 · · 开始浏览这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。
由于某个需求,需要如题的转换,废话不多说,直接贴代码了,其实挺丑了,备用了
func (this *Server) socketParserHandler(client *genTcpServer.Client, fullData []byte) { fmt.Println("original data is", client) strPointerHex := fmt.Sprintf("%p", unsafe.Pointer(client)) fmt.Println("connection is", strPointerHex) strPointerInt := fmt.Sprintf("%d", unsafe.Pointer(client)) fmt.Println("connection is", strPointerInt) i, _ := strconv.ParseInt(strPointerInt, 10, 0) var pointer *genTcpServer.Client pointer = *(**genTcpServer.Client)(unsafe.Pointer(&i)) fmt.Println("connection pointer is", pointer) debugMsg := fmt.Sprintf("%p", unsafe.Pointer(pointer)) fmt.Println("debugMsg is", debugMsg)
有疑问加站长微信联系(非本文作者)
入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889
关注微信11411 次点击
上一篇:golang 应用的部署相关技术
下一篇:我为什么选择go语言
添加一条新回复
(您需要 后才能回复 没有账号 ?)
- 请尽量让自己的回复能够对别人有帮助
- 支持 Markdown 格式, **粗体**、~~删除线~~、
`单行代码` - 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
- 图片支持拖拽、截图粘贴等方式上传
收入到我管理的专栏 新建专栏
由于某个需求,需要如题的转换,废话不多说,直接贴代码了,其实挺丑了,备用了
func (this *Server) socketParserHandler(client *genTcpServer.Client, fullData []byte) { fmt.Println("original data is", client) strPointerHex := fmt.Sprintf("%p", unsafe.Pointer(client)) fmt.Println("connection is", strPointerHex) strPointerInt := fmt.Sprintf("%d", unsafe.Pointer(client)) fmt.Println("connection is", strPointerInt) i, _ := strconv.ParseInt(strPointerInt, 10, 0) var pointer *genTcpServer.Client pointer = *(**genTcpServer.Client)(unsafe.Pointer(&i)) fmt.Println("connection pointer is", pointer) debugMsg := fmt.Sprintf("%p", unsafe.Pointer(pointer)) fmt.Println("debugMsg is", debugMsg)