博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
C中的常用IO函数
阅读量:6873 次
发布时间:2019-06-26

本文共 883 字,大约阅读时间需要 2 分钟。

1、printfscanf

特征

参数

返回值

printf

打印的字符数

scanf

读取数字:

①跳过空白字符,读取符号字符或数字字符,直到费数字字符

②将数字后读到的那个空白字符放回输入

③未能读入指定的输入时,就留下这个字符,下次读取,而不会无视它

读取字符串:

①忽略开始的空白字符,读取一个字符串,直到遇到空字符

②将字符串后读到那个空白字符放回输入

③在读出的“字符串”后加上'\0'称为一个真正的字符串

读取字符:

所有字符一视同仁,空白字符也一样

①成功读入的项目的个数

②没有读取任何项目则为0,检测到文件结尾则返回EOF

2、单字符IOputchargetchar

很简单,与putcgetc很相像,只有参数的差别,前两者通过后两者定义。这是大多数文本处理程序的核心。

3、putsgets

字符串IO

特征

参数

返回值

puts

自动添加换行符'\n'

字符串地址

gets

①读取字符串,直到'\n'

②读取换行符并丢弃

③添加空字符'\0'

接收字符数组名

①正常:字符串的地址,也即接收字符数组名

②出错或遇到文件尾:返回空指针NULL

然而gets函数有个缺陷:不检查目标数组是否能够容纳输入,很不安全,事实上,这正是蠕虫病毒的原理。对于重要的编程,应该使用fgets()而不是gets()

特征

参数

返回值

fputs

不会自动添加换行符

①字符串

②最大输出字符数

③文件

fgets

①读取字符串,读到n-1个字符或者换行符为止

②读取并保存换行符,并不丢弃

③添加空字符'\0'

①接收数组

②最大读入字符数n

③文件

gets

总结:

scanfprintf用于混合类型数据的读取、转换及输出,或者希望每次读取一个单词。

执行速度是比较慢的。

Gets从键盘读取文本更好,当然,在重要场合,应使用fgets

这几对IO输入时互相搭配的。

 

转载于:https://www.cnblogs.com/lxjsailor/archive/2012/09/25/2793475.html

你可能感兴趣的文章
Java之Collections.emptyList()、emptySet()、emptyMap()的作用和好处以及要注意的地方
查看>>
音视频格式简解
查看>>
LF.85.Determine If One String Is Another's Substring
查看>>
[改善Java代码]断言绝对不是鸡肋
查看>>
FTP操作类的使用
查看>>
JavaWeb之数据库连接池
查看>>
用Javascript获取页面元素的位置
查看>>
javascript弹出对话框
查看>>
112. Path Sum - Easy
查看>>
CentOS7安装IPython notebook
查看>>
openstack常用命令
查看>>
JSON解析
查看>>
解决 CentOS7 安装完成后ifconfig命令不能用
查看>>
系统共享配置检测
查看>>
GitHub vs. Bitbucket 不只是功能不同
查看>>
C工具库10:带引用计数的buffer
查看>>
使用kendynet构建异步redis访问服务
查看>>
rsync远程拷贝服务搭建
查看>>
Java核心编程快速入门
查看>>
Description has only two Sentences(欧拉定理 +快速幂+分解质因数)
查看>>