0

アップデート

エラー: void 値が無視されないはずです

新しいアップデート

dgesv についてテストするための実験的な関数を作成しようとしましたが、yum を使用してインストールしたため、現在 -llapack が見つからないと表示されます。

LAPACK から dgesv を呼び出すのに問題があります。現在、私はこれを試しました:

extern "C"
{
    void dgesv(int *N, int *NRHS, double *A,
          int *LDA, int *IPIV,
          double *B, int *LDB, int *INFO);
}

dgesv(&lengthA, &widthF, A, &leadingDemA,
          permMat, B, &leadingDemB, &errorCheck);

問題は、 でコンパイルした場合でもg++ program -llapack、コンパイラが私に怒鳴ることです。

私は何を間違っていますか?

4

1 に答える 1

0

あなたが投稿したコードにはいくつかの問題があります。まず、 の宣言にdgesvセミコロンがありません。あなたも合格していますABそしてpermMat間違っています。括弧は、変数が以下のように宣言または定義されている場合にのみ使用する必要があります

char a[10];
void f(char a[]);

次の変更は、投稿したコードが実際に使用しているコードである限り、コンパイルの問題を処理する必要があります。

extern "C"
{
    void dgesv(int *lengthA, int *widthF, double *A,
        int *leadingDemA, double *permMat,
        double *B, int *leadingDemB, int *errorCheck); // <-- semi-colon
}

dgesv(&lengthA, &widthF, A, &leadingDemA, permMat, B, &leadingDemB, &errorCheck);
//                        ^^                    ^^  ^^
于 2013-05-20T03:30:48.673 に答える