第1个回答 2012-03-18
可以用几个int储存,比如int a1储存大数最低15位(第一位放着,防止进位溢出),int a2再储存15位,以此类推然后每个int相加,每个int第16位为进位,加上下个int,这样下来,然后去掉第16位,显示就从最高位打印出来,再打印下一位,紧挨着一起就让用户看到了(这是我现想的,一开始知道大概的字节数,不知道你听的懂不,本人表达能力不是很好)
还可以用数组
先用malloc()函数分配下面两个的空间
byte a[n1]
byte b[n2]
如果n1>=n2
分配一个这个空间
byte c[n1];
如果n1<n2
分配一个这个空间
byte c[n2];
a,b为加数,c为和
然后从后面开始相加,加到前面,加一次付给c[i]
就行了,最后打出c,要一个一个打出,连在一起
你也可以去搜索下windows计算器的源码,我这个很麻烦,而且还有些细节要处理,呵呵