社区
C++ 语言
帖子详情
fclose 失败,错误代码 Bad file number 是什么意思??
Ronal_Lee
2010-05-19 04:00:02
fclose 失败,错误代码 是 Bad file number ,请问这个错误代码 是什么意思,该怎么解决呢???
...全文
1355
9
打赏
收藏
fclose 失败,错误代码 Bad file number 是什么意思??
fclose 失败,错误代码 是 Bad file number ,请问这个错误代码 是什么意思,该怎么解决呢???
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
9 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
十八道胡同
2010-05-19
打赏
举报
回复
int iRet = fclose(fp);
if(EOF == iRet)
{
//在这里出现的 errno = Bad file number 错误
}
你在用个变量吧,fp刚释放就有被利用
Ronal_Lee
2010-05-19
打赏
举报
回复
[Quote=引用 5 楼 cattycat 的回复:]
你是linux还是,文件描述符号不对,看fopen是否错误了。
[/Quote]
我是windows,7楼贴出代码了,给看看这代码没问题吧???谢谢
Ronal_Lee
2010-05-19
打赏
举报
回复
[Quote=引用 1 楼 zhzxlc_06 的回复:]
坏的文件数字..没有见过这种错误...是不是文件指针有问题?
楼主贴代码吧...
[/Quote]
void WriteLog(AnsiString sMessage, AnsiString _astrLogFileName)
{
try
{
AnsiString asFileName = ExtractFilePath(Application->ExeName)+ _astrLogFileName;
FILE *fp;
fp = fopen(asFileName.c_str(), "a+");
if (fp == NULL)
{
return;
}
AnsiString sRecord = "内容";
fprintf(fp, sRecord.c_str());
fprintf(fp, "\n");
long i = ftell(fp);
//大于9M就清空
if(i > 9216000)
{
fclose(fp);
fp = fopen(asFileName.c_str(),"wt");
if (fp == NULL)
{
return;
}
}
int iRet = fclose(fp);
if(EOF == iRet)
{
//在这里出现的 errno = Bad file number 错误
}
}
catch(Exception &E)
{
return;
}
catch(...)
{
return;
}
}
yellowtree12
2010-05-19
打赏
举报
回复
文件错误
cattycat
2010-05-19
打赏
举报
回复
你是linux还是,文件描述符号不对,看fopen是否错误了。
azure110
2010-05-19
打赏
举报
回复
[Quote=引用 2 楼 zhao4zhong1 的回复:]
fclose(f);里面的f没有fopen,或已经不是之前fopen的返回值了。
[/Quote]
看看 你 f fopen 返回值会后面异常时的值是否相同,同时指针类的 东西最好用完后 把它设置为Null
白云飘飘飘
2010-05-19
打赏
举报
回复
文件号错误!
赵4老师
2010-05-19
打赏
举报
回复
fclose(f);里面的f没有fopen,或已经不是之前fopen的返回值了。
chaoliu1024
2010-05-19
打赏
举报
回复
坏的文件数字..没有见过这种错误...是不是文件指针有问题?
楼主贴代码吧...
The Art of Assembly Language Programming
You are visitor as of October 17, 1996.The Art of Assembly Language ProgrammingForward Why Would Anyone Learn This Stuff?1 What's Wrong With Assembly Language2 What's Right With Assembly Language?3 Organization of This Text and Pedagogical Concerns4 Obtaining Program Source Listings and Other Materials in This TextSection One: Machine OrganizationArt of Assembly Language: Chapter OneChapter One - Data Representation1.0 - Chapter Overview1.1 -
Number
ing Systems1.1.1 - A Review of the Decimal System1.1.2 - The Binary
Number
ing System1.1.3 - Binary Formats1.2 - Data Organization1.2.1 - Bits1.2.2 - Nibbles1.2.3 - Bytes1.2.4 - Words1.2.5 - Double Words1.3 - The Hexadecimal
Number
ing System1.4 - Arithmetic Operations on Binary and Hexadecimal
Number
s1.5 - Logical Operations on Bits1.6 - Logical Operations on Binary
Number
s and Bit Strings1.7 - Signed and Unsigned
Number
s1.8 - Sign and Zero Extension1.9 - Shifts and Rotates1.10 - Bit Fields and Packed Data1.11 - The ASCII Character Set1.12 Summary1.13 Laboratory Exercises1.13.1 Installing the Software1.13.2 Data Conversion Exercises1.13.3 Logical Operations Exercises1.13.4 Sign and Zero Extension Exercises1.13.5 Packed Data Exercises1.14 Questions1.15 Programming ProjectsChapter Two - Boolean Algebra2.0 - Chapter Overview2.1 - Boolean Algebra2.2 - Boolean Functions and Truth Tables2.3 - Algebraic Manipulation of Boolean Expressions2.4 - Canonical Forms2.5 - Simplification of Boolean Functions2.6 - What Does This Have To Do With Computers, Anyway?2.6.1 - Correspondence Between Electronic Circuits and Boolean Functions2.6.2 - Combinatorial Circuits2.6.3 - Sequential and Clocked Logic2.7 - Okay, What Does It Have To Do With Programming, Then?2.8 - Generic Boolean Functions2.9 Laboratory Exercises<
linux错误检测及处理办法
本文内容来自:高级Unix编程第二版 14.2 节错误检测 大多数的系统调用都会返回值,如read函数,返回的是一个已读取的字节数。为了表示错误,系统通常会返回一个不会和有效数据混淆的数值,最常见的是-1。因此,一般的错误处理程序写出来如下:if ((amt = read(fd, buf, numbyte)) == -1) { fprintf(stderr, "Read f
《C语言深度解析》第9、10章——位操作 /c标准IO、网络编程/线程/链表
本课程主要讲解以下内容:1. 位操作(位运算)2. c语言的标准IO函数3.标准IO与文件IO、常见标准IO函数有哪些、fopen/
fclose
)、标准io输出函数、标准io输入函数等4.多线程、网络编程、数据库、数据结构、顺序表、链表、单链表、双链表、队列/栈、Linux内核链表
fopen函数
失败
原因分析以及分析原因的方法
程序发现 fopen 函数
失败
了,但找不到原因,在网上搜了下,找到一篇文章,发现了问题所在。 因为写的是测试程序,没有注意 fopen 后没有及时
fclose
。所以一开始的时候,程序都没有报错,最后打开了几千个文件句柄才发现一直打不开文件了。 使用 ulimit -n 可以查看当前系统中打开文件句柄的最大值,我这设置的是 4096。(对每个用户而言) 使用 lsof 命令可以查看,第一列是 c...
64位c语言调用32位glibc,glibc
fclose
源代码阅读及伪造_IO_
FILE
利用
fclose
实现任意地址执行...
简介最近学习了一下_IO_
FILE
的利用,刚好在pwnable.tw上碰到一道相关的题目。拿来做了一下,遇到了一些困难,不过顺利解决了,顺便读了一波相关源码,对_IO_
FILE
有了更深的理解。文章分为三部分,分别是利用原理、实例和源码阅读。源码部分比较无聊所以我把它放在了最后。原理原理我们使用fopen打开一个文件会在堆上分配一块内存区域用来存储
FILE
结构体,存储的结构体包含两个部分,前一部分为...
C++ 语言
64,639
社区成员
250,578
社区内容
发帖
与我相关
我的任务
C++ 语言
C++ 语言相关问题讨论,技术干货分享,前沿动态等
复制链接
扫一扫
分享
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++
技术论坛(原bbs)
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
请不要发布与C++技术无关的贴子
请不要发布与技术无关的招聘、广告的帖子
请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下
试试用AI创作助手写篇文章吧
+ 用AI写文章