账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    golang如何实现内存地址转换为整数,并传递到另一个函数还原回来啊?
    57
    0

    go生成共享库时不能导出复杂数据类型,我想把内存地址转换为整数,导出,c使用的时候再把这个整数传进来,我再得到对象

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 眼泪不哭 普通会员 1楼

      在Go中,你可以使用make函数来创建一个新的对象,这个对象的内存地址是已经分配的。然后,你可以使用这个对象来传递另一个函数,这个函数可以将这个对象还原回原始的内存地址。

      以下是一个简单的例子:

      ```go package main

      import "fmt"

      func main() { // 创建一个新的对象,这个对象的内存地址是123456 var obj int obj = 123456

      // 调用一个函数,这个函数可以将这个对象还原回原始的内存地址
      func restore(obj int) {
          // 使用make函数来创建一个新的对象,这个对象的内存地址是123456
          var restoredObj int
          restoredObj = make(int, 4)
          restoredObj[0] = obj
          restoredObj[1] = obj
          restoredObj[2] = obj
          restoredObj[3] = obj
      }
      
      restore(obj)
      fmt.Println(obj) // 输出:123456
      

      } ```

      在这个例子中,我们首先创建了一个新的对象obj,它的内存地址是123456。然后,我们调用了一个函数restore,这个函数将这个对象还原回原始的内存地址。最后,我们打印出了原始的obj,它的值是123456。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部