从用户那里获得输入,直到他输入一个数字

时间:2017-01-12 19:15:11

标签: c++ char int

我必须从用户那里获得字符输入,直到他输入一个数字。我还需要最后输入的用户号码。

#include <iostream>
using namespace std;
int fun() {
    char c;
    while(1) {
        if(cin>>c == 1) {  //To check if we are still getting input
            if(isdigit(c)) { //If a number is found return to the main function
                return c-48;  //Char converted to Int
            }
        }
        else {
            break;
        }
    }
    return c-48;
}

int main() {
    int a = fun();
    cout<<a;
    return 0;
}

现在输入ahd qer 12 32之类的输入,它会将输出显示为1我知道它会给出。我想输出的是12。怎么做?你也可以在主要功能上做一些改变。我最终希望存储在变量a中的数字。

    #include <iostream>
    using namespace std;

    int fun() {
        string c;
        while(cin>>c) {
            if(isdigit(c[0]))
                return stoi(c);
        }
    }

    int main() {
        int a = fun();
        cout<<a<<" ";
        return 0;
    }

1 个答案:

答案 0 :(得分:0)

完成! 图片来源:@AlgirdasPreidžius

const getXhrResult = () => axios.get('/some-url') // returns a promise

const func1 = () => getXhrResult().then((res) => {
  console.log('Got the result')
  return result * 2 // also returns a promise
}

const func2 = () => func1().then(console.log)

func2() // logs the result * 2.