Código fuente de Weakauras
El valor de retorno de la función A es una función anónima, que cambiará la variable local I en la función A.
Cada vez que se llama a la función anónima, la variable local en A aumentará en 1 y se devolverá este valor.
Durante la ejecución, a c1 se le asigna esta función anónima, por lo que cada vez que se llama a c1, se generará la variable local I, que aumentará cada vez.
Primera pregunta:
No debes confundir los parámetros en el código fuente de lua con los parámetros en las funciones C extendidas de lua. En el lado lua, no importa qué puntero (los parámetros en la función en el lado pLc, por supuesto, necesitan el puntero pL.
Segunda pregunta:
Para el Función C, debe devolver un valor int. Este valor int le dice a lua cuántos parámetros devuelve (puede devolver 0 parámetros; si es 0, devuelve 0).
Lua_tonumber. Devuelve el valor del índice correspondiente en la pila de Lua como un número entero. En esta oración, asigna el parámetro pasado de lua a la variable num.