当前位置:首页 » 编程语言 » c语言判断文件指针是否被关
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

c语言判断文件指针是否被关

发布时间: 2022-10-03 13:03:27

① 求助:c语言,怎么判断文件指针是否指向文件尾了

int feof(FILE *fp);
返回非0表示到达文件尾,返回0表示未到达文件尾

② 关于c语言文件指针打开、读写、关闭的问题

我复制了你的程序,首先for循环中int i=0;你要把i初始化,第二读文件循环没有必要,你一次读取max个字节,还需要while循环吗?

#include<stdio.h>
#include<stdlib.h>
#define MAX 200

FILE *fp;
char st[MAX];

int main(void)
{
if((fp=fopen("题库.txt","a+"))==NULL)
{
fprintf(stderr,"抱歉。打开文件失败,可能是磁盘已满\n");
exit(1);
}

fgets(st,MAX,fp);

for(int i=0;i<MAX;i++)
printf("%c",st[i]);

if(fclose(fp)==EOF)
fprintf(stderr,"因为某些原因,无法关闭文件");
return 0;
}

我修改后成这样,程序运行完成没有任何问题

③ c语言中关于文件指针的问题

做两个指针 一个记录块起始位置一个移动

④ c语言打开文件前,如何判断该文件是否已经被打开

打开文件要用FOPEN吧
FILE
*fp;
fp
=
fopen(
"Student.dat",
"wb"
);
先判断这个指针是否为NULL就行了啊~

⑤ C语言文件关闭函数fclose(文件指针)是什么

fclose函数为C语言标准库函数,用来关闭一个已打开的文件。

该函数在stdio.h中声明,原型为:

int fclose(FILE *fp);

当fclose被调用时,一个打开的文件(以文件指针fp标识)会被关闭,关闭后,无法再对fp执行读写操作。

如果关闭成功,返回0,否则返回负值。C语言文件操作的标准流程为

1、fopen打开文件;

2、通过各种读写函数,读写文件;

3、所有操作结束后,调用fclose关闭文件。

⑥ C语言文件关闭函数fclose(文件指针)疑问

假如文件是存储硬盘上,那么所有内容是用磁化的方法写的,能掉电不丢失。
你的程序将文件打开后,将其内容的第1行读入了计算机的随机存储器中(具体就是line数组)
关闭文件后,文件仍然保持不变
line数组已经读到了数据,这些数据虽然等于文件的第1行,但已经与文件没有关系了,你使用和修改这些数据不会影响到文件,除非你再打开这个文件向里边写。
在编辑框中输出的是line数组的内容,它确实与文件的第1行内容相同!以后文件内容改了,你还要输出的话,需要再打开文件读一遍。

⑦ C语言文件指针

用强制类型转换

flag = (unsigned int)(*infile);

可以用printf("flag = %d, *infile = %d ", flag, *infile)测试。

补充:

上次匆匆忙忙看了你的问题,觉得有点奇怪,今天在VC上调了一下,不知道你的编译环境是什么,我在VC6.0上printf("\n %d",*infile); 是一个大整数,应该是一个指针值,理论上也应该如此,infile本来就是一个文件句柄。

看你的需求仿佛是想在读取文件时能知道当前读取的字节数,还是应该用ftell(FILE *)函数,如果想得到整个文件的大小,先移动到文件末尾,然后ftell(),ftell()示例如下,在VC6.0上编译调试通过:

#include <stdio.h>

void main()
{

char k;
FILE *infile;
char in_name[] = "test.txt"; //接收要打开的文件名

infile = fopen(in_name,"rb"); //假设文件能正常打开

while(!feof(infile)) //判断是否文件尾
{
printf("%d\n", ftell(infile));
k=fgetc(infile); //读入一个字符
}

}

⑧ 如何判断一个文件是否被关闭

在 C 语言的编程中,你可以通过对文件指针(fopen()、fclose()函数)、或者文件句柄(open()、close()函数)的读、写操作来判断文件是否已经关闭。

⑨ c语言打开文件前,如何判断该文件是否已经被打开

用_access函数判断,再次打开时的情况要看你第一次的打开方式了,如果上次用的是非独占打开,那没问题,如果是独占打开,会打开失败

Example

/* ACCESS.C: This example uses _access to check the
* file named "ACCESS.C" to see if it exists and if
* writing is allowed.
*/

#include <io.h>
#include <stdio.h>
#include <stdlib.h>

void main( void )
{
/* Check for existence */
if( (_access( "ACCESS.C", 0 )) != -1 )
{
printf( "File ACCESS.C exists\n" );
/* Check for write permission */
if( (_access( "ACCESS.C", 2 )) != -1 )
printf( "File ACCESS.C has write permission\n" );
}
}