c语言读文件死活读不到?解决方案

c语言读文件死活读不到????



void * imLoad(ImageType type, char *filename)
{
FILE *fp;
unsigned char LINE[70], c;
int i, type_read = 0, num_read = 0, num_max = 3;
int num[3];
int xsize, ysize;
int is_text = 0;
int data_size;
GeneralImage im;

char* buffer;

// Get the current working directory: 
if( (buffer = _getcwd( NULL, 0 )) == NULL )
perror( "_getcwd error" );
else
{
printf( "%s \nLength: %d\n", buffer, strnlen(buffer,1024) );
free(buffer);
}

fp = fopen(filename, "rb");//这块调试,似乎没东西。。。
if (!fp)
{
return NULL;
}
}



c语言读文件死活读不到?解决方案
------解决思路----------------------
工作目录没有设置吧?
属性-配置属性-调试-工作目录
------解决思路----------------------
把那个文件放入Debug目录
------解决思路----------------------
文件名绝对路径
------解决思路----------------------
引用:
Quote: 引用:

input_left.ppm

这个文件明明在指定的位置啊???

啥情况么。。。。

你程序是运行在Debug目录下面,这个目录正面没有input_left.ppm这个文件

你程序是运行在Debug目录下面,这个目录下面没有input_left.ppm这个文件,你用绝对路径应该就ok了
------解决思路----------------------
工作目录 或者 文件用绝对路径。这种问题查看下错误码,或者 监视中输入  @err,hr 看下 就很清楚了吧。
------解决思路----------------------
用绝对路径或放到工作目录里
------解决思路----------------------
建议楼主先学会如何全盘搜索指定文件名的文件
------解决思路----------------------
在fclose和fflush之前,文件不一定生成到磁盘上。
------解决思路----------------------
你的filename变量不对哦,
怎么有尖括号啊
"<input_left.ppm>"