favail.c
来自「c语言库函数!里面包含了所以c语言中的系统函数的实现及其详细说明和代码!请大家及」· C语言 代码 · 共 62 行
C
62 行
/* +++Date last modified: 05-Jul-1997 */
/*
** Find out how many more files can be fopen'ed
**
** public domain demo by Bob Stout
*/
#include "dosfiles.h"
#if defined(__TURBOC__)
#define STREAM_BUF _streams
#define FCNT FOPEN_MAX
#define FLAG flags
#elif defined(__WATCOMC__)
#define STREAM_BUF __iob
#define FCNT _NFILES
#define FLAG _flag
#else /* MSC, ZTC++ */
#define STREAM_BUF _iob
#define FCNT _NFILE
#define FLAG _flag
#endif
int favail(void)
{
int i, count;
for (i = count = 0; i < FCNT; ++i)
{
if (0 == STREAM_BUF[i].FLAG)
++count;
}
return count;
}
#ifdef TEST
main()
{
char *fname = "A$$$$$$$.$$$";
FILE *fp;
do
{
int i = favail();
printf("You can fopen %d new file%s\n", i, &"s"[i == 1]);
fp = fopen(fname, "w");
*fname += 1;
} while (fp);
do
{
printf("removing %s\n", fname);
remove(fname);
} while ('A' <= --(*fname)) ;
return 0;
}
#endif /*TEST */
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?