C语言:当scanf语句中有转义字符时,你该这样输入

您所在的位置:网站首页 scanf不能输入字符 C语言:当scanf语句中有转义字符时,你该这样输入

C语言:当scanf语句中有转义字符时,你该这样输入

2024-03-14 21:56| 来源: 网络整理| 查看: 265

最近在重新学习一下C语言的有关知识,突然发现现在来看过去所学的知识,自己的感受又有很大的不同,就拿输入语句scanf来说吧!看到CSDN问答上有一个关于scanf语句的问题,当时题主代码很简单,可是就是没有输出语句的打印,我也琢磨了很久,就是一直没有找到他的代码问题或者输入操作所在,直到今天重新学习一下C语言,眼前一亮,找到当时题主的问题所在了,于是写了这篇文章。

文章目录 1. 一个有关scanf输入语句的示例2. 常见的转义字符

1. 一个有关scanf输入语句的示例

前一段时间看到CSDN问答上有一个关于scanf输入语句的问题,具体实例小编已经记不清楚了,但是小编记得当时题主的问题,具体问题不好描述,还是看相关代码或者截图吧!

#include #include int main(){ int a; scanf("%d\n",&a); printf("%d\n",a); system("pause"); return 0; }

当时那位题主就是问为什么没有输出,如下: 在这里插入图片描述 上述图片中的操作位输入100,然后按键盘Enter多个,一直没有看到输出语句。 现在小编通过自己学习发现,上述输入语句要想执行成功,需要在输入100后面直接加\n即可,如下: 请添加图片描述 如果是如下输入语句(两个变量),那情况又一样了。

#include #include int main(){ int a,b; scanf("%d\n%d\n",&a,&b); printf("%d,%d\n",a,b); system("pause"); return 0; }

此时,如果输入语句位123\n456\n,那么结果就会有问题了。 请添加图片描述 可以发现变量b的值是不对的,此时应该这样输入,如下: 请添加图片描述 通过上述示例,小编觉得输入语句有这样的规定,如果在输入语句中出现转义字符,只有一个转义字符且出现在末尾,那么输入语句会把这个转义字符当成一个普通字符来看;如果出现在中间,那么输入语句会认为这个转义字符就是转义字符,直接输入即可,如下: 请添加图片描述 请添加图片描述 如果有多个转义字符,那么在中间的转义字符直接输入对应的操作(如\n,点击键盘Enter)即可,在末尾的则输入转义字符本身即可(如\n输入\n),如下: 请添加图片描述 请添加图片描述

最后,再总结一下scanf语句,如果在“格式控制字符串”(指"%d%d"这些语句)中除了声明以外,还有其他字符,则在输入数据时在对应的位置上应输入与这些字符相同的字符。(如果其中有转义字符,那么在中间的转义字符直接点击相应的键盘操作即可,而在末尾的转义字符则输入转义字符本身即可[即\n直接输入\n,把\n当成普通字符来看待即可,不要把它看成换行符号])。

2. 常见的转义字符

对了,为了方便读者了解还有哪些转义字符,小编把常用的转义字符用表格排列出来。

转义字符字符值\’单撇号(')\"双撇号(")\?问号(?)\\反斜线(\)\a警告(alert)\b退格(backspace)\f换页(form feed)\n换行\r回车\t水平制表符\v垂直制表符


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3