c - 文件 I/O 显示 C 中的编译错误

标签 c compiler-errors

我正在尝试用 C 语言将一个字符写入文件,但是这段代码:

case 4: //If the user types 4 (reset)
FILE * fp;

FILE *fp;
fp = fopen("settings.txt", "w");
fprintf(fp, "a");
int fclose(FILE * fp);

break;

显示此错误:

fileio.c:72:5: error: expected expression
                            FILE * fp;

(是的,我知道我使用了 file * fp 两次,但如果没有两者,它会显示更多错误。)

我该如何解决这个问题?

最佳答案

这里出现了一些问题。您不能在 case 语句中声明新变量。在 switch 之外声明您的 fp。另外,只声明一次,关闭时调用该函数,而不是编写新的函数原型(prototype):

fclose(fp);

关于c - 文件 I/O 显示 C 中的编译错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46480012/

相关文章:

c - 构建 mlt 时,Cygwin 中对 WinMain 的 undefined reference

c++ - 我可以将 *array 传递给 EXE 吗?

c# - 为什么我的Visual Studio 2019仍在编译最后一个程序而没有更改?

rust - 根据编译目标操作系统,Rust 中将不同类型的值分配给变量的惯用方式是什么?

php GLOBALS session 文件

c++ - 在 C++ 中编译多个 .hpp 和 .cpp 文件时出错

vb.net - Visual Basic 编译器无法从以下错误中恢复 : System Error &Hc0000005& (Visual Basic internal compiler error)

C程序从同一个文件中删除注释

c++ - Lua 比 C/C++ 更适合的示例用法

c - 链接列表仅打印文本文件行的最后一个单词