C语言 fgets

#include <stdio.h>
char *fgets(char *s, int size, FILE *stream);

功能:从stream指定的文件内读入字符,保存到s所指定的内存空间,直到出现换行字符、读到文件结尾或是已读了size - 1个字符为止,最后会自动加上字符 '\0' 作为字符串结束。

参数:

  • s:字符串
  • size:指定最大读取字符串的长度(size - 1)
  • stream:文件指针,如果读键盘输入的字符串,固定写为stdin

返回值:

  • 成功:成功读取的字符串
  • 读到文件尾或出错: NULL

fgets()在读取一个用户通过键盘输入的字符串的时候,同时把用户输入的回车也做为字符串的一部分。

通过scanf和gets输入一个字符串的时候,不包含结尾的“\n”,但通过fgets结尾多了“\n”。

fgets()函数是安全的,不存在缓冲区溢出的问题。

案例

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
#include <math.h>
#include <time.h> int main(void)
{
// fgets()
// 可以接受空格
// 将用户输入的回车也会算作为字符串的一部分
// 获取字符串少于元素个数会有\n、大于等于时没有\n
// fgets(存放数组, 数组大小, 默认指针);
char ch2[];
fgets(ch2, sizeof(ch2), stdin);
printf("%s", ch1); return ;
}

fgets 使用案例

最新文章

  1. [C#] 软硬结合第二篇——酷我音乐盒的逆天玩法
  2. win7+IIS7下木有4.0框架问题的解决方案
  3. 给返回的injector增加了一个invoke方法
  4. JavaScript高级程序设计-第六章面向对象的程序设计
  5. 003.同时Ping多个IP(select实现IO复用,信号计时),ping程序升级版
  6. 【python】删除1~100的素数
  7. 每个极客都应该知道的Linux技巧
  8. php 开发最好的ide: PhpStorm
  9. Java序列化与反序列化(Serializable)
  10. Hadoop 学习笔记 (十) MapReduce实现排序 全局变量
  11. 【JS模式】单体模式
  12. LeetCode-Word LadderII
  13. 2015第19周四jquery版本
  14. POJ 3481 &amp;amp; HDU 1908 Double Queue (map运用)
  15. usb host鼠标不能使用原因
  16. JavaScript &amp; XML
  17. 中国天气网 JSON接口的城市编码解析及结果
  18. Vue阻止冒泡
  19. video.js不能控制本地视频或者音频播放时长
  20. Flask的session使用

热门文章

  1. openlayers编辑区域
  2. R 分析回归(一元回归)
  3. 题解 AT5632 【Sum of Two Integers】
  4. 1级搭建类105-Oracle 19c 单实例 FS(19.3+RHEL 8)公开
  5. JS 字符串 String对象
  6. double加减乘除
  7. centos因为安装花生壳而无法登录系统的问题
  8. LaTeX绘图
  9. 用MyEclipse远程debug
  10. linux centos7环境下安装apache2.4+php5.6+mysql5.6 安装及踩坑集锦(二)