问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

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

发布网友 发布时间:2022-05-31 12:10

我来回答

4个回答

热心网友 时间:2023-10-14 19:10

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;
}

热心网友 时间:2023-10-14 19:11

#include <string.h>
  #include <stdio.h>
  int main(void)
  {
  FILE *stream;
  char string[] = "This is a test";
  char msg[20];
  /* 打开一个文件 */
  stream = fopen("DUMMY.FIL", "w+");
  /*向文件中写入测试字符串“this is a test” */
  fwrite(string, strlen(string), 1, stream);
  /* 操作指针指向文件头 */
  fseek(stream, 0, SEEK_SET);
  /* 从文件中读取一定长度的字符串 */
  fgets(msg, strlen(string)+1, stream);
  /* 打印字符串 */
  printf("%s", msg);
  fclose(stream);
  return 0;
  }

热心网友 时间:2023-10-14 19:11

从流中读一行或指定个字符,   原型是char *fgets(char *s, int n, FILE *stream);   从流中读取n-1个字符,除非读完一行,参数s是来接收字符串,如果成功则返回s的指针,否则返回NULL。   形参注释:*s结果数据的首地址;n-1:一次读入数据块的长度,其默认值为1k,即1024;stream文件指针
fgets函数用来从文件中读入字符串。fgets函数的调用形式如下:fgets(str,n,fp);此处,fp是文件指针;str是存放在字符串的起始地址;n是一个int类型变量。函数的功能是从fp所指文件中读入n-1个字符放入str为起始地址的空间内;如果在未读满n-1个字符之时,已读到一个换行符或一个EOF(文件结束标志),则结束本次读操作,读入的字符串中最后包含读到的换行符。因此,确切地说,调用fgets函数时,最多只能读入n-1个字符。读入结束后,系统将自动在最后加'\0',并以str作为函数值返回。

热心网友 时间:2023-10-14 19:12

用 法: char *fgets(char *string, int n, FILE *stream);
程序例:

#include <string.h>
#include <stdio.h>

int main(void)
{
FILE *stream;
char string[] = "This is a test";
char msg[20];

/* open a file for update */
stream = fopen("DUMMY.FIL", "w+");

/* write a string into the file */
fwrite(string, strlen(string), 1, stream);

/* seek to the start of the file */
fseek(stream, 0, SEEK_SET);

/* read a string from the file */
fgets(msg, strlen(string)+1, stream);

/* display the string */
printf("%s", msg);

fclose(stream);
return 0;
}
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
“笑指旧山归路长”的出处是哪里 PCB为什么要拼板,PCB拼板打样有哪些好处? 绘制紫外吸收光谱时,我发现最大吸收波长是333nm,此时吸光度为4.01 对吸光度测量值有何影响? 陆垚知马俐的歌词是什么? 玫瑰花水中的养殖方法 陈年柚子茶如何做 陈年柚子茶的制作方法 在答题卡上改题号是指那一道题扣分还是整个卷子都没? ...考试时我写到了卷子上,会怎么样?会不会按抄袭 高考时在卷子上不小心画了道怎么办? 梦幻西游宠物,孩子进阶花费大概多少!? 勤哲excel编写如何减少内存 vivoy81s为什么插上耳机发语音没声音? 我的网名是;╰爱情是糖、甜到悲伤ミ ,需要一个头像女生跟我的网名配的 支付宝里的500元天翼账号用户补贴金是真的吗? 好听的QQ网名【女生】,个性签名,和QQ头像。最好一个网名跟的一个个性签名和头像 阳光保险公司靠不靠谱?我需要一份阳光大病保险 沃账户如何删除绑定的银行卡? 豆瓣写日记有什么限制吗? 沃钱包如何解绑银行卡? 微信共同好友点赞看不到 小米4手机管家安装不上 求一很悲的网名 小米2S连接电脑正常但是不能360或者QQ手机管家说没有连接,就不能用他们下软件。怎么办 用小米桌面腾讯手机管家怎么查不出软件了? 小米盒子使用沙发管家下不了软件,提示网络不稳定。一 电脑开机后 以前装的输入法和一些软件不见了 小米2a与QQ电脑管家下载东西老是链接不上 怎么处理 非常感谢 帮忙想一个比较原宿风的女孩网名 小米2用腾讯手机管家连接电脑安装软件时, 男性肾虚的表现症状? 香肠馅可以故猪油渣吗 C语言用fgets()从文件读取多行字符时出现的问题 剩下的香肠肉馅可以包包子吗 C语言文件习题:在C语言中,函数fgets(str,n,fp)的功能是___。 20斤香肠馅放9两盐会很咸吗 C语言 怎么用fgets()把一个文件多行内容读取到一个字符串中 谈谈传统动画影片和现代动画影片在制作上及艺术效果上有何不同? 我和我女朋友要取个温柔即又浪漫的情侣网名但不能俗求大家想个谢谢 香肠馅咸了怎么办,盐放多了, 香肠馅 剩下不少,没肠衣了,如何处理 C语言fgets函数读取文件,为何以行判断字符串结束 端午节吃粽子是中华民族的传统习俗,五月初五早上,奶奶为小明准备了四只粽子:一只肉馅,一只香肠馅,两 端午节吃粽子是中华民族的传统习俗,五月初五早晨,妈妈为洋洋准备了四个粽子:一个香肠馅,一个红枣馅, (图009?兰州)端午节吃粽子是中华民族的传统习俗.五月初五早晨,妈妈为洋洋准备了四只粽子:十只香肠馅 ppt修改板式会影响母版吗 我想要个温柔后的,,是情侣网名 帮帮我 温柔和温戾是情侣网名吗 C语言中用fgets读字符串 输出的时候以一个字符串一行的形式输出 C语言fgets问题