我在这一行收到错误expected ')' before '&' token
:
&p1, &p2, &q1, &q2);
,它是void calcula_pq (...)
函数的一部分。
我无法弄清楚如何修复它。请帮我。
这是我的代码
#include <stdio.h>
void calcula_pq ( double xi, double yi, double div, double xk, double yk,
double dkv, double x2, double y2, double d2v, double x3, double y3,
double d3v, double *p1, double *p2, double *q1, double *q2);
int main ()
{
double p1, p2, q1, q2, xi, yi, div, xj, yj, djv, xk, yk, dkv;
scanf ("%lf%lf%lf%lf%lf%lf%lf%lf%lf", &xi, &yi, &div, &xj, &yj, &djv,
&xk, &yk, &dkv);
void calcula_pq ( xi, yi, div, xk, yk, dkv, xk, yk, dkv, xj, yj, djv,
&p1, &p2, &q1, &q2);
printf ("%.10f %.10f %.10f %.10f", p1, p2, q1, q2);
return 0;
}
void calcula_pq ( double xi, double yi, double div, double xk, double yk,
double dkv, double x2, double y2, double d2v, double x3, double y3,
double d3v, double *p1, double *p2, double *q1, double *q2){
double pa, pb, qa, qb;
pa = ( ( (xi*xi) - (x2*x2) + (yi*yi) - (y2*y2) - (div*div) + (d2v*d2v) /
(2 * (xi - x2) ) );
pb = ( ( (x3*x3) - (xk*xk) + (y3*y3) - (yk*yk) - (d3v*d3v) + (dkv*dkv) /
(2 * (x3 - xk) ) );
qa = ( (y2 - yi) / (xi - x2));
qb = ( (yk - y3) / (x3 - xk));
*p1 = pa;
*p2 = pb;
*q1 = qa;
*q2 = qb;
}
答案 0 :(得分:1)
在main中的方法调用具有void ..删除并尝试
从
改变void calcula_pq ( xi, yi, div, xk, yk, dkv, xk, yk, dkv, xj, yj, djv,
&p1, &p2, &q1, &q2);
到
calcula_pq ( xi, yi, div, xk, yk, dkv, xk, yk, dkv, xj, yj, djv,
&p1, &p2, &q1, &q2);
答案 1 :(得分:0)
删除void
之前的calcula_pq (...
或将其括在括号中(如果您打算在那里投射)。但我认为你复制并粘贴了签名并错过了。
还缺少两个右括号(calcula_pq
(2 * (xi - x2) ) );
(2 * (x3 - xk) ) );
和#include <stdio.h>
void calcula_pq ( double xi, double yi, double div, double xk, double yk,
double dkv, double x2, double y2, double d2v, double x3, double y3,
double d3v, double *p1, double *p2, double *q1, double *q2);
int main ()
{
double p1, p2, q1, q2, xi, yi, div, xj, yj, djv, xk, yk, dkv;
scanf ("%lf%lf%lf%lf%lf%lf%lf%lf%lf", &xi, &yi, &div, &xj, &yj, &djv,
&xk, &yk, &dkv);
calcula_pq ( xi, yi, div, xk, yk, dkv, xk, yk, dkv, xj, yj, djv, // remove void
&p1, &p2, &q1, &q2);
printf ("%.10f %.10f %.10f %.10f", p1, p2, q1, q2);
return 0;
}
void calcula_pq ( double xi, double yi, double div, double xk, double yk,
double dkv, double x2, double y2, double d2v, double x3, double y3,
double d3v, double *p1, double *p2, double *q1, double *q2){
double pa, pb, qa, qb;
pa = ( ( (xi*xi) - (x2*x2) + (yi*yi) - (y2*y2) - (div*div) + (d2v*d2v) /
(2 * (xi - x2) ) ) ); // add )
pb = ( ( (x3*x3) - (xk*xk) + (y3*y3) - (yk*yk) - (d3v*d3v) + (dkv*dkv) /
(2 * (x3 - xk) ) ) ); // add )
qa = ( (y2 - yi) / (xi - x2));
qb = ( (yk - y3) / (x3 - xk));
*p1 = pa;
*p2 = pb;
*q1 = qa;
*q2 = qb;
}
}。
{{1}}