【问题标题】:Print address of string in LuaLua中字符串的打印地址
【发布时间】:2011-12-15 12:45:27
【问题描述】:

我想在 Lua 中打印字符串的起始地址。那么有什么方法可以让我做到这一点吗?例如:-

x = "abc"

现在我想打印存储 abc 的地址。那么有什么办法可以做到吗?然后我会将这个 x 传递给 C 程序,然后尝试打印收到的 x 的地址,以查看 lua 没有复制字符串,而是使用对基地址的引用。

那么有什么方法可以做到吗?

【问题讨论】:

    标签: lua


    【解决方案1】:

    Lua 中无法获取字符串的地址。

    可能是因为没有必要。无论如何,字符串是内化的。所以每个字符串在内存中只存在一次。将字符串文字分配给变量会检查用于存储字符串的哈希表。如果未找到,则添加字符串,并且变量获取对已加载字符串的引用。如果找到,它只会获取对现有字符串的引用。 Implementation details of Lua 5.0,字符串处理在 5.1 IRC 中没有太大变化。

    这直接回答了您需要它的问题,不是吗?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-27
      • 2021-03-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-02
      • 2011-06-29
      • 1970-01-01
      • 2018-01-01
      相关资源
      最近更新 更多