关于QString转换成数值

在Qt 中QString 转换成数值有直接调用的接口:

1)

int toInt ( bool * ok = 0, int base = 10 ) const

2)

double toDouble ( bool * ok = 0 ) const

如果想知道转换是否成功,可以通过检查参数ok返回的值是否为真来判断。

一直以来对空字符串转换成数值是否可行存在疑问?

今天试了一下,不成!!返回的ok=false.

不仅如此,

1)连QString iStr("8.123");这样的字符串转换成 toInt,也会失败。返回值为0,且ok=false。结论一:浮点形式的字符串不能转换成整型数值。

2)连QString iStr("     8    ");  这样的字符串转换成 toInt,成功。返回值为8,且ok=true。结论二:字符串两头的空格会被忽略掉。

同理,  QString dStr("    9.0134"); 和 QString dStr("9.0134   "); 和 QString dStr("    9.0134    ");  可以成功转换浮点数值。

3)QString dStr("    9.0  134");  转换成浮点数值失败。结论三:如果字符串中间有空格,会导致转换失败。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值