golang的指針到string,string到指針的轉換


由於某個需求,需要如題的轉換,廢話不多說,直接貼代碼了,其實挺丑了,備用了

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)

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM