您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> C/C++ >> 函数调用出错

函数调用出错

来源:网络整理     时间:2016/7/25 20:40:38     关键词:

关于网友提出的“ 函数调用出错”问题疑问,本网通过在网上对“ 函数调用出错”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: 函数调用出错
描述:

想请各位高手帮我看下这段代码


/* 读取文本文件中的记录总数,一行一条记录  */
/**************************************
 pfilename :  文件名
  fsize    :  单行记录的长度
***************************************/
long ReadCount(const char *pfilename , int fsize)
{
FILE *fp;
long flen,fcount;
if((fp = fopen( pfilename , "r")) == NULL)
{
fclose(fp);
return (0) ;
}
else
{
flen = get_file_bit( pfilename );  //获取文件字节长度;
fcount = (flen/fsize);             //得到记录数
fclose(fp);
return (fcount);
}
}

我在调用的的代码是:

count = ReadCount(dtfile02,12);
if(count == 0)
{
lcd_cls();
Sound(3);
Display(3,0,(UB *)"请下载单据!",0);
Display(5,0,(UB *)dtfile02,0);
Display(9,0,(UB *)"按任意键返回",0);
getkey();
return;
}

文件名dtfile02定义为:
const char dtfile02 = "Recy_ini.txt";
程序运行后总是为0,检查了半天,觉得代码实在是没问题,所以请大家帮我看下
解决方案1:

Recy_ini.txt存在?
fcount = (flen/fsize); 得到的一定是整数?
第一个fclose(fp);没有必要。

解决方案2:

这样:

long ReadCount(const char *pfilename , int fsize)
{
    //FILE *fp;
    //long flen,fcount;
    //if((fp = fopen( pfilename , "r")) == NULL)
    //{
    //    fclose(fp);
        return (0) ;
    //}
    //else
    //{
    //    flen = get_file_bit( pfilename );  //获取文件字节长度;
    //    fcount = (flen/fsize);             //得到记录数
    //    fclose(fp);
    //    return (fcount);
    //}
}
int main() 

const char *dtfile02 = "a.jpg";
int count = ReadCount(dtfile02,12);
return 0; 

你的文件名定义有问题,用指针 解决方案3:

1. 
const char dtfile02 = "Recy_ini.txt"; 

const char* dtfile02 = "Recy_ini.txt"; 
2.
在       return (0) ;
处设断点检查是不是文件无法打开.


以上介绍了“ 函数调用出错”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/2921245.html

相关图片

相关文章