关于C语言读取文件及fscanf函数的问题

2025-02-20 04:27:4882 次浏览

最佳答案

函数名: fscanf

功 能: 从一个流中执行格式化输入,fscanf遇到空格和换行时结束,注意空格时也结束。这与fgets有区别,fgets遇到空格不结束。

返回值:整型,成功返回读入的参数的个数,失败返回EOF(-1)。

用法:

1 int fscanf(FILE*stream,constchar*format,[argument...]);

FILE *stream:文件指针;

char *format:格式字符串;

[argument...]:输入列表。

例如:

FILE* fp;

char a[10];

int b;

double c;

fscanf(fp , "%s %d %lf" , a , &b , &c);

和scanf一样,格式化串的空格不代表读取的子串有空格,存放读取数据的参数都是指针。

扩展阅读,C语言中文件的读取和写:

FILE *pFile=fopen("1.txt","r"); //获取文件的指针

char *pBuf; //定义文件指针

fseek(pFile,0,SEEK_END); //把指针移动到文件的结尾 ,获取文件长度

int len=ftell(pFile); //获取文件长度

pBuf=new char[len+1]; //定义数组长度

rewind(pFile); //把指针移动到文件开头 因为我们一开始把指针移动到结尾,如果不移动回来 会出错

fread(pBuf,1,len,pFile); //读文件

pBuf[len]=0; //把读到的文件最后一位 写为0 要不然系统会一直寻找到0后才结束

MessageBox(pBuf); //显示读到的数据

fclose(pFile); // 关闭文件

声明:知趣百科所有作品均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请在页面底部查找“联系我们”的链接,并通过该渠道与我们取得联系以便进一步处理。