为什么输入 1 2 3 4 的时候 4 无法读入
输入1 2 3 4敲击回车 1 2 3 4 进入缓存区 循环4次读四个数并赋值啊?不知道出了什么问题
应该是scanf中多了个空格的问题。但是不知道有空格会有什么影响?
scanf("%d "&a)
scanf("%d",&a)
scanf("%d\n",&a) //都有啥区别?
scanf("%d ",&a)
为什么输入 1 2 3 4 的时候 4 无法读入
输入1 2 3 4敲击回车 1 2 3 4 进入缓存区 循环4次读四个数并赋值啊?不知道出了什么问题
应该是scanf中多了个空格的问题。但是不知道有空格会有什么影响?
scanf("%d "&a)
scanf("%d",&a)
scanf("%d\n",&a) //都有啥区别?
scanf("%d ",&a)
空格,tab和换行对scanf来说都是空白字符,当scanf碰到空白字符,会略过缓冲区的所有空白字符直到遇到非空白字符。
你在%d后面加了一个空格,输入1 2 3 4回车后,必须再输入一个非空白字符才会让scanf停止读入。