2016-09-13 48 views

回答

1

據我所知,有沒有直接的方式從一些內聯JavaScript返回數組(雖然有一種方法從JavaScript中返回只讀數組C功能,請參見this answer)。你可以做的是在C函數中爲數組使用malloc空間,將地址傳遞給內聯Emscripten,並使用Emscripten JavaScript函數writeArrayToMemory將JavaScript數組複製到malloced內存中。像這樣的...

char *a = malloc(4); 

EM_ASM_INT({ 
    var v1 = new Uint8Array([2,4,6,8]); 

    writeArrayToMemory(v1, $0) 
    }, a); 

printf("the array is [%d, %d, %d, %d]\n", a[0], a[1], a[2], a[3]);