golang的指针到string,string到指针的转换

ziyouchutuwenwu · · 2916 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

由于某个需求,需要如题的转换,废话不多说,直接贴代码了,其实挺丑了,备用了

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)

 

本文来自:博客园

感谢作者:ziyouchutuwenwu

查看原文:golang的指针到string,string到指针的转换

2916 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传