#include <ctype.h>int getch(void);void ungetch(int);/*getop函数:获取下一个运算数或数值操作数*/int getop(char s[]){int i,c;while((s[0]=c=getch())==' '||c=='\t');s[1]='\0';if(!isdigit(c) && c!='.') /*收集整数部分*/return c;i=0;if(isdigit(c))/*收集小数部分*/while(isdigit(s[++i]=c=getch()));if(c=='.')while(isdigit(s[++i]=c=getch()));s[i]='\0';if(c!=EOF)ungetch(c);return NUMBER;}当 if(isdigit(c))这个条件为真的时候,执行下面的循环语句,但是这个时候c中存放的就是一个数字了。是先付给数组呢?还是要再调用一次这个getch呢啊?我也弄不明白是怎么个执行顺序才可以先收集整数部分,在收集小数部分,而且小数点事在那个循环语句当中放到数组当中的呢?求高手给指点。
2 回答
- 2 回答
- 0 关注
- 187 浏览
添加回答
举报
0/150
提交
取消