- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想打印使用 MPFR
的计算结果到文件,但我不知道如何。 MPFR
用于进行高精度的浮点运算。要打印 mpfr_t
数字,您可以使用以下函数:
size_t mpfr_out_str (FILE *stream, int base, size t n, mpfr t op, mp rnd t rnd)
我想我的问题是我不理解 FILE*
对象以及它们与 fstream
对象的关系。
如果我将 mpfr_out_str
行中的 my_file
更改为 stdout
那么该数字将如我所希望的那样打印到屏幕上,但我没有不知道如何将其写入文件。
#include <mpfr.h>
#include <iostream>
#include <fstream>
using namespace std;
int main() {
mpfr_t x;
mpfr_init(x);
mpfr_set_d(x, 1, MPFR_RNDN);
ofstream my_file;
my_file.open("output.txt");
mpfr_out_str(my_file, 2, 0, x, MPFR_RNDN);
my_file.close();
}
最佳答案
可以将 std::ostream 方法与 mpfr 函数(如 mpfr_as_printf 或 mpfr_get_str)一起使用。但是,它需要额外的字符串分配。
#include <mpfr.h>
#include <iostream>
#include <fstream>
using namespace std;
int main() {
mpfr_t x;
mpfr_init(x);
mpfr_set_d(x, 1, MPFR_RNDN);
ofstream my_file;
my_file.open("output.txt");
char* outString = NULL;
mpfr_asprintf(&outString, "%RNb", x);
my_file << outString;
mpfr_free_str(outString);
my_file.close();
mpfr_clear(x);
}
关于c++ - 从 MPFR 打印到文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38830249/
我一定遗漏了一些明显的东西: library(Rmpfr) list.mpfr <- list(mpfr(10, 128), mpfr(20, 128)) # I'd like to turn th
我最近编写了一个程序来计算 pi 到指定位数。位数必须作为第一个命令行参数传递。 当使用大约 300 以下的数字值运行时,它工作得很好。但是,当使用较大的数字值运行时,它会崩溃并出现以下异常。 ../
#include #include #include #include #include #include mpf_t epi; int main(int argc, char * * a
任意精度库 GMP 和 MPFR 使用机器字大小整数的堆分配数组来存储构成高精度数字/尾数的肢体。 应该如何解释这个肢体数组以恢复任意精度整数?换句话说:对于 N 个肢体,每个肢体持有 B 位,我应该
我正在处理一个处理非常大整数的项目,并使用了 MPIR库,基于 GMPlib到目前为止的整个项目。 我现在需要一个 MPIR 不包含的对数函数。另一个图书馆,MPFR ,同样基于 GMPlib,确实有
任意精度库 GMP 和 MPFR 使用机器字大小整数的堆分配数组来存储构成高精度数字/尾数的肢体。 应该如何解释这个肢体数组以恢复任意精度整数?换句话说:对于 N 个肢体,每个肢体持有 B 位,我应该
考虑以下向量: > v1 [1] 0.000000e+00 0.000000e+00 1.110223e-16 4.440892e-15 3.266195e-08 2.531242e-07 1.0
我正在尝试将 MPFR 数字转换为字符串,然后再返回。我使用的代码是: int base = 10; int input = 25; mpfr_t number; mpfr_inits2(53, nu
我正在尝试使用 MPFR 在 C++ 中编写一个函数来计算多个值。我目前正在使用 mpfr 数组来存储这些值。不知道每次需要计算和存储多少个值。这是函数: void Calculator(mpfr_t
我想打印使用 MPFR 的计算结果到文件,但我不知道如何。 MPFR 用于进行高精度的浮点运算。要打印 mpfr_t 数字,您可以使用以下函数: size_t mpfr_out_str (FILE *
我想模拟各种 n 位二进制浮点格式,每个格式都有指定的 e_max 和 e_min,p 位精度。我希望这些格式能够模拟次正规数,忠实于 IEEE-754 标准。 自然地,我的搜索将我带到了 MPFR
我正在安装带有 mpc 0.8.2、mpfr 3.1.0 和 gmp 5.0.2 的 gcc 4.5.2。我已将每个 mpc、mpfr 和 gmp 目录复制到 gcc-4.5.2 目录中(删除版本标记
我在我的环境中安装了 gmp 和 mpfr。现在我可以成功 #include #include #include 现在,假设我用某个值初始化了一个 mpf_class: mpf_class x
我有一个简单的 c++ 程序,使用多精度库 MPFR 编写来尝试理解更大程序中的内存问题: int main() { int prec=65536, size=1, newsize=1; mp
我整理了一个基本的 C++ 代码,它从文本文件中读取两个矩阵到 C++ 中,并使用 Eigen库解决广义特征值问题。当使用数据类型 double 和 MatrixXd 时,这完美地工作并给了我预期的结
我试图在互联网上找到一个如何使用 mpfr::mpfr_fac_ui 的示例,但找不到,所以我决定在这里提问。 我有自己的迭代阶乘 boost::multiprecision::mpfr_float
刚刚成功地使用 MPFR C++ 编译了一个程序(第一次),我需要打印出一些相当大的数字,但它们只是以工程符号而不是整数的形式出现。据我所知,该库并未针对(任意)整数进行优化,因此可以将 float
我花了一整天的时间来设置 GCC http://cygwin.wikia.com/wiki/How_to_install_GCC_4.3.0 在 gcc make 步骤中,它告诉我无论出于何种原因它都
我正在尝试在 Mac OS 10.8.5 上使用 MATLAB R2013a 编译需要 mpfr C 库的 mex 文件。我希望它在没有单独安装 MPFR 的系统上运行,因此我尝试包含静态库: mex
我刚刚安装了 zkcm library在我的 kubuntu 机器上,我在编译 C++ 代码时遇到了问题。 我已经安装了 gmp 和 mpfr 库并检查它们是否工作;代码 mpfr_t m1, m2,
我是一名优秀的程序员,十分优秀!