对c语言scanf函数的一些理解
空白符包括:空格,制表符,回车符,换行符,换页符
scanf双引号括起来的即为格式化字符串,输入时应该严格执行格式
scanf函数中空白字符会使scanf()函数在读操作中略去输入中的一个或多个空白字符,空白符可以是space,tab,newline等等,直到第一个非空白符出现为止。(如果要输入空格,scanf函数中格式化说明符中间不能有空格)
#include <stdio.h>
void main()
{
int a;
printf("input the data\n");
scanf("%d\n",&a); //这里多了一个回车符\n
printf("%d",a);
}
需要输入两个数程序才结束
because:用空白符结尾时,scanf会跳过空白符去读下一个字符,所以必须再输入一个数
使用
scanf("%d ",&a); 也会出现同样问题
- Post link: https://avereed.github.io/2021/09/30/c%E8%AF%AD%E8%A8%80/
- Copyright Notice: All articles in this blog are licensed under unless otherwise stated.