Macports 経由でインストールされた SuiteSparse @4.2.1_3 を使用しており、cholmod_dense 構造を割り当てたいと考えています。次のコードを検討してください。
/* start CHOLMOD */
cholmod_common c;
cholmod_dense* myv;
cholmod_dense* myv2;
cholmod_start (&c);
myv = cholmod_l_allocate_dense( 4,1,4,CHOLMOD_REAL,&c);
myv2 = cholmod_allocate_dense(4,1,4,CHOLMOD_REAL,&c);
printf("myv=%p\n",myv);
printf("myv2=%p\n",myv2);
/* finish CHOLMOD */
cholmod_finish (&c) ;
次の出力が得られます。
myv=0x0
myv2=0x7fb86ac0c060
つまりcholmod_dense
、長いバージョンの構造体の割り当ては機能しませんが、整数バージョンはうまく機能します。これが起こる理由を知っている人はいますか?