scanf会读取换行符和空格吗?还是读取换行符和空格后将它们丢弃?

2020-09-22 社会 99阅读
这个是分情况的。
有一个特殊的格式 %c
当%c格式的时候,会读取任何字符,包括换行和空格。
当其他格式的时候(不包括正则表达式), 如果空格或者换行出现在前面,会被读取并抛弃
在后面的时候,不会读取,而只是检测。
比如
缓冲中是 空格123空格
以%d读取, 那么第一个空格会被抛弃。读入123三个数值,发现下一个是空格,那么停止。
但是这个结尾的空格 还在缓冲区里面。
正则表达式的时候,看正则写法,决定是否抛弃。
声明:你问我答网所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系fangmu6661024@163.com