你是用的C标准太低了,C文件要求将变量定义都放在函数开头,代码块中间是不能定义新的变量的。将char a放到函数的第一行就行了
int main()
{
char a;
FILE *fp =NULL;
fopen_s(&fp,"C\\User\\...\\text.txt","r");
a = fgetc(fp);
printf("%c",a);
}
而VS2010的C编译器只支持C89标准,对C99标准支持不完全,而在C89标准中,变量需要放到函数体的前面声明,先声明再使用。
目测代码没有问题
错误不在变量上,而是在警告上,你在文件的第一行添加这个宏:
#define _CRT_SECURE_NO_WARNINGS
您好,我是有问必答小助手,您的问题已经有小伙伴帮您解答,感谢您对有问必答的支持与关注!