【发布时间】:2016-06-06 05:35:55
【问题描述】:
您好,我在尝试将数据写入文件时遇到了 fopen 和 fputs。
特别是以下代码:
#include <stdio.h>
#include <stdlib.h>
int main()
{
FILE * fp;
fp = fopen ("file_out.txt", "a+");
fprintf(fp, "%s %s %s %d", "We", "are", "in", 2016);
fclose(fp);
return(0);
}
给我这个输出: 我们在 2016 年
这是我所期待和希望的。
但是,当我改变时
fprintf(fp, "%s %s %s %d", "We", "are", "in", 2016);
到
fprintf(fp, "%s %s %s %d", "We", "are", "in", 3333);
然后重新编译并运行,我仍然得到与以前相同的输出!意思是,打印的是 2016,而不是 3333。非常感谢任何帮助。
【问题讨论】:
-
怎么重新编译?肯定和代码没有关系。
-
最可能的答案:您忘记重新编译,忘记重新运行,或者您正在查看错误的文件。
-
你先保存文件了吗?编译前!!如果你在 code::blocks 中,那么
-
删除您的文件,运行新代码并告诉我们会发生什么。
-
您必须运行旧版本。确保您 (1) 保存您的源文件 (2) 重新编译您的源文件 (3) 重新链接您的可执行文件。必须跳过其中一个步骤。我建议删除旧的可执行文件和旧的 .o 文件,然后重新构建。