编程语言
首页 > 编程语言> > C++带逗号分隔符的字符串转数字

C++带逗号分隔符的字符串转数字

作者:互联网

/*
将带有逗号分隔符的字符串数字转换为对应数字
对于诸如"1a2b3c",返回0
ok标识是否转换成功
*/
long str2num(const char* str,bool& ok)
{
    long result=0;
    int t=1;
    ok=true;
    const char* pstr=str;
    if(*pstr=='-')
    {
        t=-t;
        pstr++;
    }
    while(*pstr!='\0')
    {
        if(isdigit(*pstr))
        {
            result*=10;
            result+=*pstr-'0';
        }
        else
        {
            if(*pstr!=',')
            {
                ok=false;
                return 0;
            }
        }
        pstr++;
    }
    return t*result;
}

 

标签:pstr,char,long,ok,C++,逗号,result,分隔符,return
来源: https://www.cnblogs.com/castor-xu/p/14423738.html