C语言里fgets函数怎么用?发一个简单的函数给我看下。谢谢。
追问:我知道头文件,只是我用的时候出错了。看书也不知道啥地方有问题。
追问:我知道头文件,只是我用的时候出错了。看书也不知道啥地方有问题。
答案:-----------------------------------------------------------------------------------------------------------------------
fgets函数原型如下:
char *fgets(char *s,int n,FILE *stream);
它一次从文件中读取一行,包括换行符,放入字符串s中,并且加上字符串结束标志符'\0'。参数n代表缓冲区s中最多能容纳多少个字符(不算结尾标志符'\0')。
fgets函数返回一个char类型的指针,和s指向同一个地方。如果在没有数据可以读取,那么函数就返回NULL。
----------------------------------------------------------------------------------------------------------------------
下面的程序将文本文件students.txt的内容依次读到字符串s中输出
#include<stdio.h>
#include<stdlib.h>
#define MAX 200
int main()
{
FILE *fpSrc;
char szLine[MAX];
fpSrc=fopen("students.txt","r");
//文件要指明路径
if(NULL==fpSrc)
{
printf("文件读取失败!");
exit(1);
}
while(fgets(szLine,MAX-1,fpSrc))//从文件中读取一行写入到字符串szLine中,直到fgets函数返回NULL
printf("%s\n",szLine);//打印出读取的内容
fclose(fpSrc);//关闭文件流
return 0;
}
其他:那其他的怎么用呢?它们都代表什么呀?还有就是,我在C函数帮助文档里看对于初学者来说,用哪些头文件,是个问题。 一时搞不清,你就先用 fgets(由文件中读取一字符串)
表头文件
include<stdio.h>
定义函数
char * fgets(char * s,int size,FILE * stream);
函数说明
fgets()用来从参数stream所指的文件内读入字符并存到参数s所指的内存空间,直到出现换行字符、读到文件尾或是已读了size-1个字符为止,最后会加上NULL作为字符串结束。
返回值
gets()若成功则返回s指针,返回NULL则表示有错误发生。
范例
#include<stdio.h>
main()
{
char s[80];
fputs(fgets(s,80,stdin),stdout);
}
执行
this is a test /*输入*/
this is a test /*输出*/
上一个:1)C语句int *func(); 中,func 表示的是( ) A.返回值为指针的函数名称 B.指针整型变量的指针 C.指向数组
下一个:c语言2级要用到哪些程序