0

関数ポインターを割り当てようとすると、左辺値オペランドの問題が発生します。問題の正確な場所はわかりませんが、その特定の問題に関係するすべてのコードを提供します。

    double *func(double); //initialization for a pointer to a function that both returns a double and requires a double

    func = &xsquaredsinx; //trying to make the pointer point at a function that both returns a double and requires a double
    func = &halfcircle;//others that are the same
    func = &testfunction;

どんな助けでも素晴らしいでしょう。

4

2 に答える 2

3

funcの宣言の構文が正しくありません。その宣言は、 を受け取り、doubleを返す関数を宣言しますdouble*。宣言する正しい方法funcは次のとおりです。

double (*func)(double);
于 2012-03-02T02:27:53.783 に答える
0

あなたの宣言double *func(double);は関数へのポインタを宣言するのではなく、関数を宣言するだけだと思います。代わりに試すdouble (*func)(double);

ここに良いチュートリアルがあります: http://www.newty.de/fpt/fpt.html#assign

于 2012-03-02T02:30:11.677 に答える