image.png
如果想在C/C++代码中定义一个需要从JavaScript调用的函数,可以使用Emscripten 的ccall()函数并使用EMSCRIPTEN_KEEPALIVE声明(它将添加函数到导出函数列表)来完成。
代码创建
创建一个test.c文件:
#include
#include
int main(int argc, char ** argv)
{
printf("Hello World\n");
}
#ifdef __cplusplus
extern "C"
{
#endif
void EMSCRIPTEN_KEEPALIVE add(int a, int b)
{
printf("a+b=%d\n", a+b);
}
#ifdef __cplusplus
}
#endif
默认情况下,Emscripten生成的代码总是只调用该main()函数,其他函数作为死代码被删除。
将EMSCRIPTEN_KEEPALIVE放在函数名称之前可以阻止这种情况发生。
还需要导入emscripten.h库来使用EMSCRIPTEN_KEEPALIVE。
添加模板文件HTML
在上一级新建html