一个stream!=NULL 的问题

yuzhongfeihong 2008-08-25 04:29:43
运行一段时间会出现如下错误提示:
Debug Assertion Failed!
Program:...
File:fseek.c
line:100
Expression: (stream!=NULL)

点Retry,箭头指向fseek.c中的
_VALIDATE_RETURN( (stream != NULL), EINVAL, -1);
这一行

关闭窗口的时候会出现如下错误提示:
Debug Assertion Failed!
Program:...
File:fclose.c
line:47
Expression: (stream!=NULL)
...
点Retry,箭头指向fclose.c中的
_VALIDATE_RETURN((stream != NULL), EINVAL, EOF);
这一行,
请问是哪里出问题了.


相关代码:
double temp,tpme[3];
int nRead = 0;


fopen_s(&File,"D:\\A.PRN","rb");

for (int i=0;i<1;i++)
{
fseek(File,1000*count,0);

nRead =fread (tpme,1,24,File);
if( nRead == 24 )
{
count++;
}
else
{
bEnd = TRUE;
fclose(File);
}

}

谢谢
...全文
2389 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
shihaojie1219 2010-07-31
  • 打赏
  • 举报
回复
可能访问越界了
yuzhongfeihong 2008-08-25
  • 打赏
  • 举报
回复
搞定!
fopen_s(&File,"D:\\A.PRN","rb"); 这一句要移到最外面,这样每次循环的时候不会反复去执行,就可以了
问题:
为什么反复去执行这句后来会出错呢? 不懂
yuzhongfeihong 2008-08-25
  • 打赏
  • 举报
回复
en,刚想来说,fclose的问题自己解决了.你说的也对.谢谢
不过我大意了,在else外面确实还有个fclose(File),不过还有个fclose(FileB),但是FileB是不存在的,所以老出错.shy

第一个fseek的问题还在,
再进一步说一下问题:

运行一段时间会出现如下错误提示:
Debug Assertion Failed!
Program:...
File:fseek.c
line:100
Expression: (stream!=NULL)

点Retry,箭头指向fseek.c中的
_VALIDATE_RETURN( (stream != NULL), EINVAL, -1);
这一行

相关代码:
double temp,tpme[3];
int nRead = 0;


fopen_s(&File,"D:\\A.PRN","rb");

for (int i=0;i <1;i++)
{
fseek(File,1000*count,0); <-----------F9设置断点在此, F10跟踪debug,当count=508的时候,在此按F10,就会出现上述错误,但
是指针跳转后应该还在范围内,即执行下一句nread还是能读出24位的.

nRead =fread (tpme,1,24,File);
if( nRead == 24 )
{
count++;
}
else
{
bEnd = TRUE;
fclose(File);
}

}
菜牛 2008-08-25
  • 打赏
  • 举报
回复
fclose放到else外面去。

16,472

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧