当前位置: 代码迷 >> C语言 >> 从一个文件复制到另一个文件出现的错误
  详细解决方案

从一个文件复制到另一个文件出现的错误

热度:514   发布时间:2006-09-04 22:05:29.0
从一个文件复制到另一个文件出现的错误

当我从一个文件复制到另一个文件时,执行的时候出现错误
说main函数已经定义了,
文件1
#include "stdio.h"
#include "stdlib.h"
#define NULL 0
main()
{
FILE *fp1, *fp2;
char ch;

if((fp1=fopen("txt","r"))==NULL)
{
printf("open error!");
exit(0);
}
if((fp2=fopen("txt2","w"))==NULL)
{
printf("open error!");
exit(0);
}

while(!feof(fp1))
{
ch=fgetc(fp1);
fputc(ch,fp2);

}

fclose(fp1);
fclose(fp2);


}

文件2
#include "stdio.h"
#include "stdlib.h"
#define NULL 0
int main()
{
FILE *fp1, *fp2;
char ch;

if((fp1=fopen("txt","r"))==NULL)
{
printf("open error!");
exit(0);
}
if((fp2=fopen("txt2","w"))==NULL)
{
printf("open error!");
exit(0);
}

while(!feof(fp1))
{
ch=fgetc(fp1);
fputc(ch,fp2);

}

fclose(fp1);
fclose(fp2);

return 0;
}

错误如下
-----------------Configuration: 文件1 - Win32 Debug--------------------
Linking...
文件2.obj : error LNK2005: _main already defined in 文件1.obj
Debug/文件1.exe : fatal error LNK1169: one or more multiply defined symbols found
执行 link.exe 时出错.

文件1.exe - 1 error(s), 0 warning(s)
还有怎么在windows xp下查看读到磁盘中的信息啊,我用cmd进入后,输入c>type txt后说不是命令提示符

搜索更多相关的解决方案: 文件  

----------------解决方案--------------------------------------------------------
因为是两个main()的原因?
----------------解决方案--------------------------------------------------------
我分别起了两个名字创建了两个程序啊
不是在一个中的
能具体说下是怎么了吗>
----------------解决方案--------------------------------------------------------

[此贴子已经被作者于2006-9-4 23:26:00编辑过]


----------------解决方案--------------------------------------------------------
楼主用的什么编缉器?我用VC6.0+SP6,编缉没错
----------------解决方案--------------------------------------------------------
是VC++6.0不过结果出不来的

[此贴子已经被作者于2006-9-4 23:58:27编辑过]


----------------解决方案--------------------------------------------------------
if((fp1=fopen("txt","r"))==NULL)
你改为
if((fp1=fopen("c:\\txt1.txt","w+"))==NULL)

if((fp1=fopen("c:\\txt2.txt","w+"))==NULL)
看看

[此贴子已经被作者于2006-9-5 1:03:44编辑过]


----------------解决方案--------------------------------------------------------
以下是引用wwjazz在2006-9-5 0:57:16的发言:
if((fp1=fopen("txt","r"))==NULL)
你改为
if((fp1=fopen("c:\\txt1.txt","w+"))==NULL)

if((fp1=fopen("c:\\txt2.txt","w+"))==NULL)
看看

不用吧,好像tc中才需c:\\这种模样的路径名,vc中应该不是,
我猜你可能使用的一个工作区,
试试用两个工作区个字编译!

----------------解决方案--------------------------------------------------------
能告诉我怎么在DOS下查找你存入到磁盘的文件内容吗>
我用cmd进入后,输入什么都是not命令.比如我的文件是tpt,我应该怎么在dos下输入什么查看呢
谢谢
----------------解决方案--------------------------------------------------------
加油吧,
----------------解决方案--------------------------------------------------------

  相关解决方案