读书人

c语言跟文件的关联没异常但运行不了

发布时间: 2013-10-17 17:26:17 作者: rapoo

c语言跟文件的关联,没错误但运行不了,求帮忙
#include <stdio.h>
FILE *fp1;
FILE *fp2;
int a[5],i;
void main()
{
fp1=fopen("c:\\5.txt","r");
fp2=fopen("c:\\6.txt","w");
for (i=0;i<5;i++)
fscanf(fp1,"%d",&a[i]);
for (i=0;i<5;i++)
fprintf(fp2,"%d",a[i]);
}

[解决办法]
本帖最后由 max_min_ 于 2013-10-16 15:50:57 编辑 加上这几句判断,打印,看看是提示啥错误


#include <errno.h>

FILE *fp1 = NULL ;
FILE *fp2 = NULL ;
fp1=fopen("c:\\5.txt","r");
fp2=fopen("c:\\6.txt","w");
if( fp1 == NULL )
printf(" open 5.txt failed :%s\n", strerror(errno));
if( fp2 == NULL )
printf(" open 6.txt failed :%s\n", strerror(errno));


[解决办法]
#include <stdio.h>
FILE *fp1;
FILE *fp2;
int a[5],i;
int main()
{
fp1=fopen("g:\\5.txt","r");
fp2=fopen("g:\\6.txt","w");
if(fp1==NULL)
printf("fp1 is NULL\n");
if(fp2==NULL)
printf("fp2 is NULL\n");
for (i=0;i<5;i++)
fscanf(fp1,"%c",&a[i]);
for (i=0;i<5;i++)
fprintf(fp2,"%c",a[i]);
fclose(fp1);
fclose(fp2);
return 0;
}

/*C-Free5.0编译成功,你要实现的功能应该是将文件的前5个字符从5.txt复制到6.txt吧,若是如此:
1.请保证5.txt存在,最好内容不少于5个字符;
2.一般请不要放在c盘,一般c盘这样是写不进数据的,需要管理员权限才可以;
3.因为读取的是字符,所以在请使用%,你可以用%d测试一下,看看,文件里面显示的内容,那么前面也最好定义为char a[5];。
仅供参考。
*/
[解决办法]
3.因为读取的是字符,所以在请使用%c
补充:我已经测试好了的,fscanf和fprintf都用%c

读书人网 >C语言

热点推荐