Lua源代码中的posrelat()是什么?

我今天在阅读Lua的源代码时,在lstrlib.c中发现了一个有趣的函数,称为static ptrdiff_t posrelat(ptrdiff_t pos,size_t len)。源代码中的注释将其称为“相对字符串位置”。这是什么意思?通过搜索似乎只能获得有限的信息。是否有人可以解释它的功能以及ptrdiff_t是什么,如果可能的话,在Lua中的使用和应用?

请参见https://www.lua.org/source/5.1/lstrlib.c.html

点赞
用户129570
用户129570

根据 Lua 文档,可以使用负数索引访问一个字符串的末尾。这个函数似乎将可能为负数的索引归一化为仅为正数。

2017-04-17 17:17:29