就是第二重while里面的条件不成立的话,不是会被getchar吞掉一个数字字符吗?
不是做了判断吗,判断ch!=' '
不是会被getchar吞掉一个数字字符吗?
getchar确实读取了,同时把读取的内容赋值给了ch变量。
ch已经接收输入值了啊,所以不会被吞掉的,如果直接getchar() == “”判断,则会被吞掉
getchar是吞掉一个数字字符,但是之后又用ungetc补充回去了。
哦,是因为下面有一个ungetc
while ((ch = getchar()) == ' '); 这句意思就是如果getchar()读入的是空格,什么也不干,继续等待读入下一个,再判断是否是空格,直到不是空格退出while()循环。