我需要帮助从字符中提取数字。 可以说我有:
char str = " ( 1 22 -4)";
我需要提取每个整数并调用另一个方法。
while (*p) {
if (isdigit(*p)) {
int val = strtol(p, &p, 10);
on_int(val);
} else {
p++;
}
}
我已成功提取整数,但我不知道如何提取负数。
通过这段代码,我提取了 1、22 和 4。如何获得 4 前面的负数?
最佳答案
您应该更改条件以适应负号,如下所示:
if ((p[0] == '-' && isdigit(p[1]))|| isdigit(p[0])) ...
关于c - 如何从字符串中提取负数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14946093/