读书人

为啥用fopen打不开txt文本

发布时间: 2013-04-07 12:50:11 作者: rapoo

为什么用fopen打不开txt文本
# include<stdio.h>
# include<stdlib.h>
struct stu
{
char name[20];
int num;
char sex;
int age;
char adr[30];
int sal;
char health[10];
char wh[10];
};
void main()
{
struct stu s[6];
int i=0;
FILE *hp,*hp1;
if((hp=fopen("D:\\c++\\stu.txt","r"))==NULL)//j就是这里出了问题
{
printf("open error");
exit(0);
}

if((hp1=fopen("txt1","wb"))==NULL)
{
printf("error");
exit(0);
}

for(i=0;i<6;i++)
{
fscanf(hp,"%s %d %c %d %s %d %s %s",s[i].name,&s[i].num,&s[i].sex,&s[i].age,s[i].adr,&s[i].sal,s[i].health,s[i].wh);

printf("%s %d %c %d %s %d %s %s",s[i].name,s[i].num,s[i].sex,s[i].age,s[i].adr,s[i].sal,s[i].health,s[i].wh);
}
for(i=0;i<6;i++)
fwrite(&s[i],sizeof(struct stu),1,hp1);


fclose(hp);
fclose(hp1);
}
至少窝的VC6下还是好使的~
[解决办法]
为啥用fopen打不开txt文本

好的 ,我也读出来了,虽然是乱码,也不知道哪儿出了问题,不过好几年没搞过C++了..

为啥用fopen打不开txt文本
[解决办法]
在我的vc6.0环境下可以运行,结果没有问题。建议楼主再次检查一下路径和文件名,如果错误仍然存在,建议楼主把所使用的环境贴出来,还有楼主说 是if((hp=fopen("D:\\c++\\stu.txt","r"))==NULL)这里有问题,那么请问是编译的时候报错呢,还是运行的时候出错呢还是输出“open error”并退出呢?

读书人网 >C语言

热点推荐