如何确定字符串是否为C+的数字?

如何确定字符串是否为C+的数字?

我在编写一个检查字符串是否是数字的函数时遇到了很多困难。对于我正在编写的游戏,我只需要检查我正在读取的文件中的一行是否为数字(我将知道它是否是这样的参数)。我编写了以下函数,我认为它运行得很顺利(或者我意外地编辑了它以阻止它,或者我是精神分裂症或者Windows是精神分裂症):

bool isParam (string line){
    if (isdigit(atoi(line.c_str())))
        return true;

    return false;}


慕斯709654
浏览 566回答 3
3回答

白衣非少年

你可以用C+的方式用Boost:词法_CAST来实现它。如果你真的坚持不使用助推,你可以检查它做了什么,并这样做。这相当简单。try&nbsp;{ &nbsp;&nbsp;double&nbsp;x&nbsp;=&nbsp;boost::lexical_cast<double>(str);&nbsp;//&nbsp;double&nbsp;could&nbsp;be&nbsp;anything&nbsp;with&nbsp;>>&nbsp;operator.}catch(...)&nbsp;{&nbsp;oops,&nbsp;not&nbsp;a&nbsp;number&nbsp;}
打开App,查看更多内容
随时随地看视频慕课网APP