私は、RのCライブラリを使って、ライブラリの機能を使ってカスタムC関数を作成し、.C-Interfaceを使ってこれらのC関数にアクセスしています。Cの構造体へのポインタを整数として格納
いくつかのCコードでは、いくつかのカスタム構造体にスペースを割り当てて、それらのポインタをRに格納したいので、これらの構造体を.Cの連続呼び出しで使用することができます。 .C関数を使いながら、C構造体へのポインタをintにキャストしてRに整数として格納することができます。この整数を後で.C経由で呼び出しに渡すと、構造体を追跡して問題なく使用することができます。
私のやや素朴な質問です:これらのポインタをRの整数に格納すると何が問題になりますか?それは正常に動作するので、私はそこにいくつかの欠点があると仮定しているが、私はそれに関する情報を見つけることができませんでした。
私はRに精通していませんが、 'int 'へのポインタをキャストすると' sizeof(void *) 'が' sizeof(int) 'より大きい可能性があります。これには 'intptr_t'があります。 – DeiDei