我刚开始得到一个奇怪的printf
输出,有人见过吗?知道它可能是由什么引起的吗?
http://imgur.com/4Mt6xdi
编辑
这是代码。我是 c 新手,所以如果有任何东西(即使它没有导致错误)看起来错误或不常见,请告诉我。
printf(f2,"%8.31f\t%8.31f\n",x[0],x[2]);
fprintf(f2,"%8.31f\t%8.31f\n",x[1],x[2]);
我刚开始得到一个奇怪的printf
输出,有人见过吗?知道它可能是由什么引起的吗?
http://imgur.com/4Mt6xdi
编辑
这是代码。我是 c 新手,所以如果有任何东西(即使它没有导致错误)看起来错误或不常见,请告诉我。
printf(f2,"%8.31f\t%8.31f\n",x[0],x[2]);
fprintf(f2,"%8.31f\t%8.31f\n",x[1],x[2]);
在您编写的代码中:
if (x[0]*oldx<0)
{
printf(f2,"%8.31f\t%8.31f\n",x[0],x[2]);
fprintf(f2,"%8.31f\t%8.31f\n",x[1],x[2]);
}
wheref2
是指向 的指针FILE
,不应作为 的第一个参数传递printf
。只需将其删除。
第 96-97 行至少有一个问题:
printf(f2,"%8.31f\t%8.31f\n",x[0],x[2]);
fprintf(f2,"%8.31f\t%8.31f\n",x[1],x[2]);
第一行应该调用fprintf
,而不是printf
。
任何编译器都应该至少给你一个警告,以调用printf
aFILE*
作为第一个参数。你看到这样的警告了吗?如果是这样,你为什么忽略它?
在启用附加警告的情况下进行编译应该会显示许多其他问题。在做任何其他事情之前修复这些。