getop()是个什么涵数

来源:学生作业帮助网 编辑:作业帮 时间:2024/08/09 07:11:06
getop()是个什么涵数
xTOAWt鵂&6iz[ (CmP" B*]XEgvBZč{μ㳑pr9ᴃV~`U݌9׾=||xP%˞3p :Hbe jSJ=l_[h (X$BKKb,CJ(NpΎcE5]dIs &0OiĠlT6PQ| {,|`^$#ƒ1 hEۨF- P !8 7rU'QA /q]o%Jň+.{KD8AY Q#}ܭX*u0OG¨hMmjUF2jӂMgᆶIR8i&'@;`ufQzdl2)s4ovDdnw(u}~u1_7H&e"HA6rߕyȍl͌ n{I ,H5lmS[1DzX|B& 6Z{s$'T$;: oW3m w]~^bq /x

getop()是个什么涵数
getop()是个什么涵数

getop()是个什么涵数
你好!
你说的这个getop()函数,不是标准库中的函数,应该是《the c programming language》这本书中的一个例子当中的函数,它的作用是读取一个数值,下面是它的原代码:
int getop(char s[])
{
int i, c;
while ((s[0] = c = getch()) == ' '|| c == '\t')
; //如果是空格或者制表符,跳过;
s[1] = '\0'; //如果不是空格或者制表符,把字符赋给c并且保存在
// s[0]中,把s[1]置为结束符,因为数组s是以’\0’结尾的
if (!isdigit(c) &&c != ‘.’)
return c; //如果c不是数字也不是点,返回c(c为操作符)
i = 0;
if (isdigit(c)) //c是整数的情况
while (isdigit(s[++i] = c = getch()))
; //把下一个字符赋给s[1],直到字符不为数字为止
if (c == ‘.’ ) //如果是小数点的情况
while (isdigit(s[++i] = c = getch()))
; //收集小数部分
s[i] = ‘\0’; //赋给结束符’\0’;
if (c != EOF) //如果不是结束符的话,返回c
ungetch(c);
return NUMBER; //返回数字的标识
}
希望可以帮到你,祝你好运!