gpt4 book ai didi

c++程序使用GMP库

转载 作者:IT老高 更新时间:2023-10-28 22:32:33 30 4
gpt4 key购买 nike

我已使用此网站上的说明安装了 GMP:http://www.cs.nyu.edu/exact/core/gmp/然后我使用该库查找了一个示例程序:

    #include <iostream>
#include <gmpxx.h>
using namespace std;
int main (void) {
mpz_class a, b, c;
a = 1234;
b = "-5678";
c = a+b;
cout << "sum is " << c << "\n";
cout << "absolute value is " << abs(c) << "\n";
cin >> a;
return 0;
}

但是如果我使用以下命令编译它:g++ test.cpp -o test.exe,它会显示 gmpxx.h: no such file or directory。我怎样才能解决这个问题?我对此有点陌生。我正在使用 MinGW。

最佳答案

在此处获取实际版本 GNU GMP Library .确保将其配置为安装在/usr/lib 中(通过 --prefix=/usr 进行配置)。

这里有文档:GNU GMP Manual .

您没有正确使用该库。我不知道你是否可以直接访问 mpx 值使用 C++ 函数,但是,这里有一个您想要实现的工作示例:

#include<iostream>
#include<gmp.h>

using namespace std;

int main (int argc, char **argv) {

mpz_t a,b,c;
mpz_inits(a,b,c,NULL);

mpz_set_str(a, "1234", 10);
mpz_set_str(b,"-5678", 10); //Decimal base

mpz_add(c,a,b);

cout<<"\nThe exact result is:";
mpz_out_str(stdout, 10, c); //Stream, numerical base, var
cout<<endl;

mpz_abs(c, c);
cout<<"The absolute value result is:";
mpz_out_str(stdout, 10, c);
cout<<endl;

cin.get();

return 0;
}

编译:

g++ -lgmp file.cpp -o file

关于c++程序使用GMP库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14126393/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com