我是一名初级程序员。我一直在匆忙地学习 C、Fortran 和 Perl。我的目标是创建一个包含曲面图的网页。我能够让我的程序进行通信以完成此任务,但在 C 程序中分配变量时遇到问题。
从我的 Perl 程序中,我得到一个文本文件 data.in
,其中仅包含一行。
例如:cosxtsiny 50 0.5 3 0 6
。这就是我所做的:
(将我的变量声明为 char
、int
或 double
)
FILE *fi
fi = open("data.in", "r");
fscanf(fi, "%s %d %f %f %f %f", &func, &PTS, &xxa, &xxb, &yyc, &yyd);
close(fi);
我应该生成一个文件 data.out
,其中包含我在使用它进行一些计算后从 data.in
获得的值。这些稍后将为我生成曲面图。
这是我的问题:我确实得到了一个具有正确数量的网格点(PTS)的曲面图,所以我知道前两个分配是正确的,但我的轴已关闭。当我看到我的 data.out
时,我的轴没有在应有的位置开始和结束。有什么建议吗?
最佳答案
我想如果您将 func
声明为字符数组,那么您应该编写类似 fscanf(fi, "%s", func)
而不是 >fscanf(fi,"%s", &func)
.
关于c - 在C中: assigning variables when reading in a one-line text file,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8569444/