烟桥 发表于 2021-3-31 19:24:16

大伙帮我康康这是咋回事呀

a=(getchar()!='\n')(a = getchar()) != '\n' 为什么这个是错误的

昨非 发表于 2021-3-31 19:57:37

本帖最后由 昨非 于 2021-3-31 19:59 编辑

while ((a = getchar()) != '\n')
这一句:是将getchar函数的返回值赋值给字符a,
然后在a的值(也就是输入的值)不为回车的时候进入循环

而 while (a = (getchar() != '\n'))
这一句:将"输入内容是否为回车的判断结果"赋值给了a
此时,a是一个bool值,不符合代码上下文的要求

烟桥 发表于 2021-3-31 19:27:20

截图错了

昨非 发表于 2021-3-31 19:53:56

烟桥 发表于 2021-3-31 19:27
截图错了

因为运算顺序不一样啊
页: [1]
查看完整版本: 大伙帮我康康这是咋回事呀