なぜ私がペナルティ化されているのかわかりません。私はこの質問に誰かのコードの一部をコピーしています...それが私が彼らが何をしたのか理解していなかったと私は助けを求めています。バイナリ/ lvalueへの無効なオペランドの定義エラー
私は他の誰かのコードを固定しています、これは一例です:彼はVARとして、Cが含まれていなかったので、私はエラーに
maul.h:29:37: error: invalid operands to binary/(have 'double' and
'double *') #define mauldiv3c(x, y, o) o[0]=x[0]/c; o[1]=x[1]/c;
o[2]=x[2]/c
を得た
#define mauldiv3c(x, y, o) o[0]=x[0]/c; o[1]=x[1]/c; o[2]=x[2]/c
は、このですか?それとも左辺の問題ですか?ここで
は、彼/彼女はそれを使用する関数です:
/* point in triangle? */
int maulpit(double *t0, double *t1, double *t1, double *p)
{
double t, a[3], b[3], c[3];
mauladd3(t1, t0, a);
mauladd3(t2, t0, b);
mauladd3(t2, t1, c);
mauldiv3c(a, 2.0, a);
mauldiv3c(b, 2.0, b);
mauldiv3c(c, 2.0, c);
maulsub3(t2, a, a);
maulsub3(t1, b, b);
maulsub3(t0, c, c);
maulnorm3d(a);
maulnorm3d(b);
maulnorm3d(c);
return(((mauldot3(a, p))>=0.0) &&
((mauldot3(b, p))=>0.0) &&
((mauldot3(c, p))=>0.0));
}
ああああ、人々はそのようなコードを書くべきではありません! 29行目にマクロをどのように使っているかを見ることができますか? – templatetypedef
これはちょうどごみです!これには適切なタイプの(nインライン)関数を使用します。そして[ask]を見て、[mcve]を提供してください。 – Olaf
'x []'または 'c'は' double * '型です。 – haccks