繁体   English   中英

如何将 Qstring 转换为 Long?

[英]how to convert Qstring to Long?

我是 Qt Creator 的新手。 我想将QString值转换为long数。 我该怎么做?

long s;
QString x = "6458621237";

编辑

结果我会有long s = 6458621237 ;

使用toLong函数。

例如,

 QString str = "FF";
 bool ok;

 long hex = str.toLong(&ok, 16);     // hex == 255, ok == true
 long dec = str.toLong(&ok, 10);     // dec == 0, ok == false

从 QT文档

long QString::toLong ( bool * ok = 0, int base = 10 ) const

返回使用 base base 转换为 long 的字符串,默认情况下为 10,并且必须在 2 到 36 或 0 之间。如果 base 为 0,则使用以下规则自动确定 base:如果字符串以“0x”开头,假定为十六进制; 如果以“0”开头,则假定为八进制; 否则,它被假定为十进制。 如果转换失败,则返回 0。

如果ok 不为0:如果发生转换错误,*ok 设置为FALSE; 否则 *ok 设置为 TRUE。

此函数忽略前导和尾随空格。

long s; 
QString x="6458621237";
s = x.toLong();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM