当前位置:编程学习 > C/C++ >>

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级要用到哪些程序

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,