困扰了很久了,生手求指点

困扰了很久了,新手求指点!includestdio.h#includestdlib.hint main(int argc,char*argv[]){int chFIL

困扰了很久了,新手求指点!
include<stdio.h>
#include<stdlib.h>
int main(int argc,char*argv[])
{
int ch;
FILE* fp;
long count =0;
if(argc!=2)
{
printf("Usage: %s filename\n",argv[0]);
exit(1);
}
if((fp=fopen(argv[1],"r"))==NULL)
{
printf("can not open %s\n",argv[1]);
exit(1);
}
while((ch=getc(fp))!=EOF)
{
putc(ch,stdout);
count++;
}
fclose(fp);
printf("File %s have %ld characters\n",argv[1],count);
return 0;
}
为什么我无法打开文件呢?是不是我打开的文件必须要和程序的可执行文件在同一个目录下?还是其他的什么原因?
[解决办法]
如果在同一个目录,那你只需要输入文件名就可以了
如果不在同一个目录,那你需要全部路径 类似c:\\1\1\1.txt
[解决办法]
你用的好像是VS把,VS里有个路径映射,在IDE里调试时,把cpp文件所在的文件夹视为当前目录,要是直接从debug文件夹下运行程序,还要把txt文件考进去才行。
[解决办法]
为了确保万无一失,使用全路径是个方法。