C语言几个输入函数的区别(史上最详细)
The difference of the string and the character(char):
字符串是一个带有""的字符序列如
"I fuck xuqiang"
annotation:双引号不是字符串的一部分。双引号告知编译器它括起来的是字符串。C语言没有专门用于存储字符串的变量类型,字符串都被存储在char类型的数组中。字符串常量"x"和字符常量'x'不同,区别之一在于'x'是基本类型(char),而"x"是派生类型(char数组);区别之二是"x"实际上由两个字符串组成:'x'和空字符\0
在C语言中有很多的输入函数比如scanf()、getchar()、gets(),但它们之间的差别在哪里呢?
1:
首先针对scanf()函数:比如scanf() 配合%s使用,scanf("%s",&a) 但是这种方法只能获取一个单词,即遇到空格等空字符就会返回。如果要读取一行字符串。如果你需要输入"I fuck xuqiang everday",这个函数将显得很农民。
2:scanf()函数的特点:
修饰符 | 意义 |
* | 滞后赋值;示例:"%*d" |
digit(s) | z最大字段宽度;在达到最大字段宽度或者遇到第一个空白字符时(不管哪个先发生都一样)停止对输入项的读取;示例:"%10s" |
hh | b把整数读作signed char或unsigned char;示例:"%hhd" "%hhu" |
ll | b把整数读作long long或unsigned long long(c99);示例:"%lld" "%llu" |
h,l或L | "%hd"和"%hi"指示该值将会储存在一个short int中。"%ho"、"%hx"和"%hu"指示该值将会储存在一个unsigned short int中。"%ld"和"%li"指示该值将会储存在一个long中。"%lo"、"%lx"和"%lu"指示该值将会储存在一个unsigned long中。"%le"、"%lf"和"%lg"指示该值以double类型储存。将L(而非l)与e、f和g一起使用指示该值以long double类型储存。如果没有这些修饰符,d、i、o和x指示int类型,而e、f和g指示float类型; |
转换说明符 | 意义 |
%c | 把输入解释称一个字符 |
%d | 把输入解释称一个有符号十进制整数 |
%e,%f,%g,%a | 把输入解释称一个浮点数(%a是c99标准) |
%E,%F,%G,%A | 把输入解释称一个浮点数(%A是c99标准) |
%i | 把输入解释称一个有符号十进制整数 |
%o | 把输入解释称一个有符号八进制整数 |
%p | 把输入解释称一个指针(一个地址) |
%s | 把输入解释称一个字符串,输入内容以第一个非空白字符作为开始,并且包含直到下一个空白字符的全部字符 |
%u | 把输入解释称一个无符号十进制整数 |
%x,%X | 把输入解释称一个无符号十六进制整数 |
[] | 字符集合 |
C语言几个输入函数的区别(史上最详细)的更多相关文章
- 测试思想-测试设计 史上最详细测试用例设计实践总结 Part2
史上最详细测试用例设计实践总结 by:授客 QQ:1033553122 -------------------------接 Part1-------------------------- 方法:这里 ...
- 史上最详细的C语言和Python的插入排序算法
史上最详细的C语言和Python的插入排序算法插入排序原理:所谓插入排序,就像我们在打牌(斗地主)时,整理我们自己手中自己的牌一样,就像是2,1,3,9,J,K,5,4,这四张牌.我们要把它其中的几张 ...
- 史上最详细“截图”搭建Hexo博客并部署到Github
http://jingyan.baidu.com/article/d8072ac47aca0fec95cefd2d.html 大家也搭建过博客,很多时候,按着教程来做就可以了,但是我当时为了搭建Hex ...
- 史上最详细“截图”搭建Hexo博客——For Windows
http://angelen.me/2015/01/23/2015-01-23-%E5%8F%B2%E4%B8%8A%E6%9C%80%E8%AF%A6%E7%BB%86%E2%80%9C%E6%88 ...
- 史上最详细Windows版本搭建安装React Native环境配置 转载,比官网的靠谱亲测可用
史上最详细Windows版本搭建安装React Native环境配置 2016/01/29 | React Native技术文章 | Sky丶清| 95条评论 | 33530 views ...
- 史上最详细的Android Studio系列教程一--下载和安装
链接地址:http://segmentfault.com/a/1190000002401964#articleHeader4 原文链接:http://stormzhang.com/devtools/2 ...
- 转 史上最详细的Hadoop环境搭建
GitChat 作者:鸣宇淳 原文:史上最详细的Hadoop环境搭建 关注公众号:GitChat 技术杂谈,一本正经的讲技术 [不要错过文末活动哦] 前言 Hadoop在大数据技术体系中的地位至关重要 ...
- 史上最详细的XGBoost实战
史上最详细的XGBoost实战 0. 环境介绍 Python 版 本: 3.6.2 操作系统 : Windows 集成开发环境: PyCharm 1. 安装Python环境 安装Python 首先,我 ...
- 史上最详细mac安装Qt教程
史上最详细mac安装Qt教程,小白看过来! 这是一篇非常适合Qt入门小白的的安装Qt教程,因为这学期我们小组的一个关于高速救援的项目要用到Qt与web进行交互式展现相关的图像,由于没有MSVC这个插件 ...
随机推荐
- 类型限定词——const
类型限定词有三个:const volatile restrict. const:一般也叫常量修饰符. 作用:是修饰变量,被修饰的变量就变成常量了,不能被二次修改了. const int a=12:a ...
- java基础2(二)
Servlet 注意: servletConfig可以获取配置文件(xml文件)中配置的servlet对象的初始化参数. url-pattern 缺省servlet 注意:tomcat目录下有一个默认 ...
- 开发工具IntelliJ IDEA的安装与操作
开发工具IntelliJ IDEA的安装与操作 1.1 开发工具概述 IDEA是一个专门针对Java的集成开发工具(IDE),它可以极大地提升我们的开发效率.可以自动编译,检查错误.在公司中,使用的就 ...
- MFC动态创建对话框中的按钮控件并创建其响应消息
转自:http://www.cnblogs.com/huhu0013/p/4626686.html 动态按钮(多个)的创建: 1.在类中声明并定义按钮控件的ID #define IDC_D_BTN 1 ...
- 命令提示符出现-bash-4.1$如何解决
故障原因:用户模式/etc/skel内容丢失 解决方法 复制etc/skel里内容到当前用户 [root@web01 ~]# su - test -bash-4.1$ cp /etc/skel/.ba ...
- JDBC-day1
package cn.gzsxt.test; import java.sql.Connection;import java.sql.DatabaseMetaData;import java.sql.D ...
- 苹果IOS下text-shadow与box-shadow失效的解决办法
加入以下样式,可以解决苹果IOS下text-shadow与box-shadow失效的问题 -webkit-appearance: none
- flask记录
flask文件上传 flask 文件上传 https://www.cnblogs.com/wongbingming/p/6802660.html flask多文件上传:https://blog.cs ...
- 信息技术手册可视化进度报告 基于BeautifulSoup框架的python3爬取数据并连接保存到MySQL数据库
老师给我们提供了一个word文档,里面是一份信息行业热词解释手册,要求我们把里面的文字存进数据库里面,然后在前台展示出来. 首先面临的问题是怎么把数据导进MySQL数据库,大家都有自己的方法,我采用了 ...
- nginx 添加代理
1 确认安装路径 ps aux | grep nginx 2.进入配置目录 3.使用vi编辑配置文件 如果是新增,可以参考其他配置,5yy复制相应行,p粘贴,然后修改内容后:wq保存退出 4.验证配置 ...