求大神解决C++的问题!!?
#include<stdio.h>typedefstruct{intx,y;}direction;intvisible(directions,directionA,dir...
#include<stdio.h>
typedef struct{int x,y;}direction;
int visible(direction s,direction A,direction B,direction C)
{
direction p1,p2;
int d;
p1.x=B.x-A.x;
p1.y=B.y-A.y;
p2.x=C.x-A.x;
p1.y=C.y-A.y;
d=s.x*p1.x*p2.x+s.y*p1.y*p2.y;
printf("M\n",d);
return d>0;
}
void main()
{
char *ss[]={"invisible","visible"};
direction s={1,1},T={1,1},A={0,0},B={2,1};
puts(ss[visible(s,T,A,B)]);
}
为什么这个程序显示error:INK : fatal error LNK1168: cannot open Debug/84665486787.exe for writing 。
并且请求告知输出至屏幕的结果第一行是:-1 。 第二行是: invisible 。的原因 、
答案是怎么算出来的 ? 展开
typedef struct{int x,y;}direction;
int visible(direction s,direction A,direction B,direction C)
{
direction p1,p2;
int d;
p1.x=B.x-A.x;
p1.y=B.y-A.y;
p2.x=C.x-A.x;
p1.y=C.y-A.y;
d=s.x*p1.x*p2.x+s.y*p1.y*p2.y;
printf("M\n",d);
return d>0;
}
void main()
{
char *ss[]={"invisible","visible"};
direction s={1,1},T={1,1},A={0,0},B={2,1};
puts(ss[visible(s,T,A,B)]);
}
为什么这个程序显示error:INK : fatal error LNK1168: cannot open Debug/84665486787.exe for writing 。
并且请求告知输出至屏幕的结果第一行是:-1 。 第二行是: invisible 。的原因 、
答案是怎么算出来的 ? 展开
展开全部
#include<stdio.h>
typedef struct{ int x, y; } direction;
int visible(direction s, direction A, direction B, direction C)
{
direction p1, p2;
int d;
p1.x = B.x - A.x; // -1
p1.y = B.y - A.y; // -1
p2.x = C.x - A.x; // 1
// 下面这行是不是应该p2.y
p1.y = C.y - A.y; // 0
// 1 * -1 * 1 + 1 * -1 * undefined
d = s.x * p1.x * p2.x + s.y * p1.y * p2.y;
printf("M\n", d);
return d>0;
}
void main()
{
char *ss[] = { "invisible", "visible" };
direction s = { 1, 1 }, T = { 1, 1 }, A = { 0, 0 }, B = { 2, 1 };
puts(ss[visible(s, T, A, B)]);
}
更多追问追答
追问
我把那里改成p2.y之后依然是这样。
Linking...
LINK : fatal error LNK1168: cannot open Debug/84665486787.exe for writing
追答
这个问题应该是那个exe打开了没有关,你去任务管理器那里把进程杀了就可以了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询