SI言語に関する質問 - ページ 9

 
Кеша Рутов:

mine_score では *m は int へのポインタであり、コメントによると配列、すなわち各行ごとに異なる数の列であり、これは矩形配列ではなく「櫛形配列」と呼ばれます。

これは、単にこの行の長さの配列のためにメモリを確保するもので、値はありません。

行列Mそのものについて。

ここには、行のポインタ用のメモリが割り当てられています。

とコラムはこちら

そうですね、後で混乱しないように、構造はそのままにしておいた方がよさそうです。

ちょうどマトリックスに交換しようと思っていたところでした。

 
Maxim Dmitrievsky:

そうですね、後で混乱しないように、構造を残しておく必要がありそうです

ただ、マトリクスに置き換えたかっただけなんです。

その通り、混乱しないように、私もenumや余分な構造体などを否定していた時期がありました。なくてもできるものはすべて否定し、数ヶ月後にこのコードを見ると、他の閲覧者はもちろん、ゼロから書き直した方が簡単で、本当に恥ずかしくなります。それに、sysやplusの標準的な配列は、代入して関数に渡すと参照になり、サイズや構造を把握する方法がない場合が多く、動的なものはもう明らかで、配列ですらなく、最初の要素へのポインタという形でメモリの一部となります。

 
 if (param->est == EST_MIC_APPROX)
        ret = OptimizeXAxis(xx, yx, prob->n, Q_map, q, P_map, p, score->m[i]+1,
                            score->M[i]);

それは私が以前に2次元配列M(ダブル **M; /*(等)特性行列*/)を 宣言したときに、得られたところですが、このf-iは1つだけ "櫛 "文字列M[i]...とμlに既に行列を介して行われた渡されます。そして今、私は長い間悪態をついています。

でも、もしかしたらこの問題は遠回しなのかもしれません。

 
I like science and technology rap about Chttps://www.youtube.com/watch?v=cdX8r3ZSzN4
 

***

 

もうちょっとで出入り禁止になります :-)

親切な司会者が前の司会者を消さない場合。

 
Maxim Kuznetsov:

もうちょっとで出入り禁止になっちゃうよ :-)

親切なモデレーターが古いものを消さないなら。

まあ、時には番屋で頭をスッキリさせるのもいいかもしれませんね。

 

この構成が最終的に返すもの。

typedef struct TF_Status TF_Status;
TF_Status* TF_NewStatus();

TF_Statusのサイズを調べてみると、コンパイルが32ビットなら4バイト、64ビットなら8 バイトとなっています。

TF_NewStatus()何を返す のかがわからないのですが

 
Igor Makanu:

この構成が最終的に返すもの。

TF_Statusのサイズを調べてみると、コンパイルが32ビットなら4バイト、64ビットなら8 バイトとなっています。

TF_NewStatus()何を返す のかがわからないのですが

正しく書けば、構造体へのポインタを返します。