0
WebAssemblyのWebサイトとチュートリアルがありましたが、少し失われてしまいました。WebAssembly用にemscriptenでコンパイルしたCコードに文字列を渡す方法
私は、次のCコードを持っている:私が理解から
emcc demo.c -s WASM=1 -s NO_EXIT_RUNTIME=1 -o demo.js
:
void EMSCRIPTEN_KEEPALIVE hello(char * value){
printf("%s\n", value);
}
私は(私もこの部分に行くための最善の方法であるか分からない)でそれをコンパイルします私は今、javascriptクラスのdemo.jsグルーコードを使用して、その方法を呼び出します:
...
<script src="demo.js"></script>
<script>
function hello(){
// Get the value
var value = document.getElementById("sample");
_hello(value.innerHTML);
}
</script>
...
私が見ているもの
(null)
は私がWebAssemblyでコンパイルされたCコードに文字列値を渡すために欠けているものがあります:私は方法がある呼び出したときに、コンソールに印刷されたNG?
ありがとうございました
「hello」と「_stringify」とは何ですか、あなたはどこにそれらを呼び出しますか? – Bergi
これはtypoですが、それは_hello(value.innerHTML)である必要があります。私は質問を編集しました。ごめんなさい – ElCapitaine
jsから呼び出すことができるように関数をエクスポートする必要があります: 'emcc demo.c -01 -s EXPORTED_FUNCTIONS = "['_ main'、 '_hello'] -o demo.js" 'また、苦労していないと気にしないでください。これはすべて新しく重い開発の下にあり、ドキュメントは必ずしも不完全で古いです。 –