2011-03-24 72 views
0

在gmp中是否有一个实现允许只有mpf_t作为参数的电源函数?我想这样做:gmp pow with two mpf_t

mpf_t s ; 
mpf_init (s); 
mpf_set_d (s,boost::lexical_cast<double>(sec)); 
mpf_t ten,mil; 
mpf_init(ten); 
mpf_init(mil); 
mpf_set_d(ten,10.0); 
mpf_set_d(mil,0.001); 
mpf_div(s,s,ten); 
mpf_pow_ui(s,ten,s); //<- this doesn't work because it need an unsigned int as third argument but I need it with a mpf_t 
mpf_mul(s,s,mil); 

回答

1

我不这么认为,至少不是只用于GNU Multi-Precision库。但是您可以使用mpfr,它基于gmp并支持mpfr_pow (mpfr_t rop, mpfr_t op1, mpfr_t op2, mpfr_rnd_t rnd)函数。见here

如果您决定这么做,this也可能有所帮助。