繁体   English   中英

Qt C ++将QString转换为long

[英]Qt C++ Convert QString to long

我正在尝试使用以下命令将QString转换为long:

        QTextStream stream(&file);
        QString content = stream.readAll();
        qDebug() << "String: " << content;
        bool ok;
        long long a = content.toLong(&ok, 10);
        qDebug() << a;
        file.close();

但是我从qDebug得到以下输出:

String:  "123451234512345
" 
0 

看来这个qstring不能转换成long long变量,因为我总是得到0。我尝试转换较小的数字(例如1234)并且可以工作,但是当我尝试转换此大数字时,我遇到了问题。 请帮忙

无符号长整数(32位)的最大值为4294967295-是有符号长整数的最大值-您的值超出了最大值。 您应该改用toLongLong函数。

您超越了漫长的界限。 字符串中的数字太大。 查找最大尺寸很长时间。 尝试tolonglong。 http://qt-project.org/doc/qt-4.8/qstring.html#toLongLong

暂无
暂无

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

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