您的位置:

c语言fgetsstdin,c语言fgets函数读取文件

本文目录一览:

C语言 fgets(text,sizeof(str1),stdin) stdin是什么?

stdin指的是标准输入,大多数情况下就是键盘

fgets(text,sizeof(str1),stdin) 就是从键盘输入sizeof(str1)这个长度的字符串(包括'\0'),并保存到text这个地址空间

C语言 fgets(text,sizeof(str1),stdin) 怎么用 请大神详述

`fgets'--get character string from a file or stream

从文件或者流中获取字符串

stdin是标准输入流

示例1:

char strBuf[1024];

fgets(strBuf, sizeof(strBuf), stdin);

//处理strBuf

示例2:

FILE* fp = fopen("some_file.txt", "r");

if(fp)

{

    char strBuf[1024];

    fgets(strBuf, sizeof(strBuf), fp);

    

    //处理strBuf

}

c语言中的fgets函数。

fgets()函数用于从文件流中读取一行或指定个数的字符,其原型为:

char

*

fgets(char

*

string,

int

size,

FILE

*

stream);

参数说明:

string为一个字符数组,用来保存读取到的字符。

size为要读取的字符的个数。如果该行字符数大于size-1,则读到

size-1

个字符时结束,并在最后补充'

\0';如果该行字符数小于等于

size-1,则读取所有字符,并在最后补充

'\0'。即,每次最多读取

size-1

个字符。

stream为文件流指针。

【返回值】读取成功,返回读取到的字符串,即string;失败或读到文件结尾返回NULL。因此我们不能直接通过fgets()的返回值来判断函数是否是出错而终止的,应该借助feof()函数或者ferror()函数来判断。

注意:fgets()与gets()不一样,不仅仅是因为gets()函数只有一个参数

FILE

*stream,更重要的是,fgets()可以指定最大读取的字符串的个数,杜绝了gets()使用不当造成缓存溢出的问题。

c语言中fgets操作方法,求一简单程序示范

fgets为stdin.h头文件中声明的,从文件中读取字符串的函数。

原型:

char *fgets(char *buf, int bufsize, FILE *stream);

参数:

buf: 指向用来存储字符串的内存位置。

bufsize: 读取数据的大小。

stream: 将要读取的文件流。

fgets最多从文件中读取bufsize-1个字符,若读取的行不足bufsize-1个字符,则读取完这行后就结束;若读取的行超过bufsize-1个字符,则只读取bufsize-1个字符,下次调用fgets时,将从此行未读取完的位置继续读取。

示例:

#include stdio.h

int main()

{

    char s[60];

    FILE *fin = fopen("a.txt", "r");

    

    fgets(s, 60, fin);

    puts(s);

    fclose(fin);

    

    return 0;

}