我可以从GMP official documentation看到:
void mpn_copyi(mp_limb_t * rp,const mp_limb_t * s1p,mp_size_t n)
越来越多地从{s1p,n}复制到{rp,n}。
void mpn_copyd(mp_limb_t * rp,const mp_limb_t * s1p,mp_size_t n)
从{s1p,n}复制到{rp,n},逐渐减少。
但是,在这种情况下,我不明白越来越和逐渐意味着什么。 越来越是否意味着它会将所有肢体从0复制到n?
由于
答案 0 :(得分:1)
使用the source,Teabee。
void
mpn_copyi (mp_ptr rp, mp_srcptr up, mp_size_t n)
{
mp_size_t i;
up += n;
rp += n;
for (i = -n; i != 0; i++)
rp[i] = up[i];
}
并递减:
void
mpn_copyd (mp_ptr rp, mp_srcptr up, mp_size_t n)
{
mp_size_t i;
for (i = n - 1; i >= 0; i--)
rp[i] = up[i];
}