回复 9楼 a132266
以下是引用a132266在2015-5-28 13:19:03的发言:
if(!isspace(c) && !inword)
!isspace(c)的作用当前字符为非空白字符
!inword当前字符的前一个字符是空白字符
此时一个新的单词开始 inword的状态为真
if(isspace(c) && inword)
isspace(c)的作用当前字符是空白字符
inword当前字符的前一个字符是非空白字符
此时说明当前单词结束 inword的状态为假
两个if()相互作用,不可能连续执行。只有一个if()执行完后才能改变条件inword的值满足另一个if()。
if判断是不是 isspace第一个表达式成立 接着inword 为真 的时候才执行语句块
if(!isspace(c) && !inword)
!isspace(c)的作用当前字符为非空白字符
!inword当前字符的前一个字符是空白字符
此时一个新的单词开始 inword的状态为真
if(isspace(c) && inword)
isspace(c)的作用当前字符是空白字符
inword当前字符的前一个字符是非空白字符
此时说明当前单词结束 inword的状态为假
两个if()相互作用,不可能连续执行。只有一个if()执行完后才能改变条件inword的值满足另一个if()。
if判断是不是 isspace第一个表达式成立 接着inword 为真 的时候才执行语句块
是的,弄清执行顺序,再找个字符串试数,单步调试。如果还不行,回头看下书吧 ! &&运算符 if()语句。书上说的比我清楚
人有多懒,编程就有多难。