1 Star 1 Fork 1

QT第三方项目/stroage

加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
gmpmath.cpp 1.21 KB
一键复制 编辑 原始数据 按行查看 历史
acanoe 提交于 2014-04-24 00:40 . new project
#include "gmpmath.h"
#include "gmpxx.h"
#include <QDebug>
GmpMath::GmpMath()
{
}
QString GmpMath::math(QString a, QString op,QString b)
{
qDebug() << "gmpmath " << a << op << b;
mpf_class a_g(a.toLatin1().data()), b_g(b.toLatin1().data()), f_g;
mp_exp_t leng;
if(op == "+")
{
f_g = a_g + b_g;
}else if(op == "-")
{
f_g = a_g - b_g;
}else if(op == "*")
{
// qDebug() << "get * math";
f_g = a_g * b_g;
}else if(op == "/")
{
f_g = a_g / b_g;
}else {
return "-1";
}
QString tmpx = QString::fromLocal8Bit(f_g.get_str(leng,10,20).c_str());
count = 0;
count = tmpx.count();
if((int)leng >= count){
for(int i = 0;i < ((int)leng - count);i ++){
tmpx.append("0");
}
qDebug() << "leng = " << leng << "tmpx = " << tmpx << "count = " << count;
if(tmpx == ""){
tmpx = "0";
}
return tmpx;
}else {
qDebug() << "leng = " << leng << "tmpx = " << QString(tmpx.left((int)leng) + "." + tmpx.mid((int)leng, 4));
return QString(tmpx.left((int)leng) + "." + tmpx.mid((int)leng, 4));
}
}
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
C++
1
https://gitee.com/qt-third-party-project/stroage.git
git@gitee.com:qt-third-party-project/stroage.git
qt-third-party-project
stroage
stroage
master

搜索帮助