0

GMP公式ドキュメントから見ることができます:

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までのすべての手足をコピーすることをますます意味していますか?

ありがとう

4

1 に答える 1

1

ソース、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];
}
于 2012-04-23T08:44:55.747 に答える