當前位置:首頁 » 編程語言 » 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" );
}
}