Gegeben eine Funktion wie exec, wie rufe ich es von lua ffi mit einer unbekannten Anzahl von Argumenten.Verwenden von luajit ffi zum Konvertieren variabler Argumente in ein char * const [] für execvp
Der Funktionsprototyp Wesen:
int execv(const char *path, char *const argv[]);
heißt
function myexecv(...)
local arg = { ... }
local carg = ffi.new("char *const[?]", #arg)
for i = 1, #arg do
carg[i-1] = arg[i]
end
return ffi.C.execv(carg[0], carg)
end
Was nicht funktioniert.
Ich dachte, es könnte einen kurzen Weg der Initialisierung oder Schaffung etwas geben, das ich in argv übergeben kann. Wie mache ich das?