C语言求救:文件调用的方法
答案:3 悬赏:0 手机版
解决时间 2021-12-03 01:14
- 提问者网友:暗中人
- 2021-12-02 09:55
C语言求救:文件调用的方法
最佳答案
- 五星知识达人网友:旧脸谱
- 2021-12-02 10:09
//#include C语言可以不用这个
#include
struct st_cusacc
{
char accId[11];
char name[21];
char Passwd[7];
};
int main()
{
struct st_cusacc openCA[2];
FILE *fp=fopen("test1.txt","rb");
if ( fp==NULL ) //加上这个,确保文件不在时,会报错!
{
printf("file not found!
");
return -1;
}
fread(openCA,sizeof(struct st_cusacc),2,fp);
fclose(fp);
printf("%s|%s|%s
",openCA[1].accId,openCA[1].name,openCA[1].Passwd);//参数多了fp
system("pause");
return 0;
}追问现在可以运行,但是文件调用不了是怎么回事?
还有,大神私聊可好?!追答运行图贴上来,看看再说追问已私信,查收追答已回信
#include
struct st_cusacc
{
char accId[11];
char name[21];
char Passwd[7];
};
int main()
{
struct st_cusacc openCA[2];
FILE *fp=fopen("test1.txt","rb");
if ( fp==NULL ) //加上这个,确保文件不在时,会报错!
{
printf("file not found!
");
return -1;
}
fread(openCA,sizeof(struct st_cusacc),2,fp);
fclose(fp);
printf("%s|%s|%s
",openCA[1].accId,openCA[1].name,openCA[1].Passwd);//参数多了fp
system("pause");
return 0;
}追问现在可以运行,但是文件调用不了是怎么回事?
还有,大神私聊可好?!追答运行图贴上来,看看再说追问已私信,查收追答已回信
全部回答
- 1楼网友:狂恋
- 2021-12-02 10:38
你这个程序,要求test1.txt和你的可执行文件放到一个目录下才能打开文件,因为你打开文件时没有指定目录。一般fopen打开文件后都需要检查一下文件指针是否为空的,否则因为文件不存在等原因导致fopen失败可能导致程序走到下面实用文件指针时直接core dump。
另外,你fread直接读取一个结构体,这样的话,要求你的文件是通过fwrite直接写结构体,否则可能导致读出来的数据格式乱了,并且这个文件应该是个二进制文件而不是文本文件吧?追问文件在一起,而且,以前训练的文件也是这么编的啊
另外,你fread直接读取一个结构体,这样的话,要求你的文件是通过fwrite直接写结构体,否则可能导致读出来的数据格式乱了,并且这个文件应该是个二进制文件而不是文本文件吧?追问文件在一起,而且,以前训练的文件也是这么编的啊
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯