高精度の结构体封装

有同学问我高精度怎么封装,结果我讲课的时候忘记讲了,抱歉抱歉(捂脸)

其实封装很简单

我们的结构体一般这样写,包含高精度计算时用的数组和记录数组长度的变量

struct gj
{
    int len;//len:数组长度  
    int v[6000];//高精度计算时用的数组
};

我们平时写高精度的时候传参传的是数组,封装后就传的是结构体了

gj jia(gj a,gj b)
{
  gj c;
  高精度加法的基础操作
  return c;
}
int main()
{
  读入a和b
  gj ans=jia(a,b);
  ...
}

另外需要注意的是,在函数jia里面定义c后,需要初始化c.v和c.len,否则会出现奇怪的错误。

另外也可以重载+号和-号,但是如果不会这样写的话就不要这样写,以免出错,采用上面的写法有相同的效果。

posted @ 2021-08-21 10:25  wljss  阅读(245)  评论(0编辑  收藏  举报