黑马程序员技术交流社区

标题: scanf函数(阻塞式函数) [打印本页]

作者: 心若不动    时间: 2016-4-15 21:54
标题: scanf函数(阻塞式函数)
1、scanf函数原型包含在标准输入输出头文件“stdio.h”,用于接收键盘输入的内容。
2、格式: scanf(“格式控制字符”, 变量的地址);
scanf()函数不允许出现scanf(“%2.3f”,&x);
3、注意事项
a、接收单个数值,在输入的时间输入多个空格,回车都是会被忽略的
        b、scanf遇到换行的时间是遇到回车的时间,
        c、输入的两个值使用空格隔开
        d、关于*号的使用
                d1、%*d 跳过一个整数  可以使用它去忽略一个字符,用于年月日的输入
d、scanf()函数的‘\n‘问题:尽量不要使用’\n’,如果使用了 如何去做?
!)、输入值后,随便输入一个内容
!!)、输入的时间输入\n,比如 22\n
!!!)、在输入的时间可以进行原样输入,就不会出错
*%d 就要原样输入

4、scanf的原理
scanf运行原理:
                1、当用户输入内容后,用户输入的内容会被放到scanf的输入缓冲区中。
然后,scanf函数会根据格式控制的字符要求,从输入缓冲区依次取它想要的内容。
                 如果,从缓冲区中取得的内容和我们的格式要求一致,则把值放到变量中,%d %c  %d,如果格式不一致,输出原有的值,不修改变量的值。

5、如果scanf缓冲区还有内容,则不会提示我们在输入值




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2