Witam, czy ktoś mógłby spojrzeć co jest źle w podanej funkcji, jej zadaniem ma być dodanie dwóch (max 80 cyfr) dużych liczb w systemie ósemkowym + do tego pytanie jak potem używać powstałej tablicy z wynikiem ? (przypisać coś w stylu tab[]=dodaj(a,b,c,d) czy jakoś inaczej ? )
Pozdrawiam i z góry dzięki za pomoc

char dodaj (char t[], char d[], int i, int j)
{
	char wynik[82];
	int k,n,a,b,m,tmp;
	for (m=0, k=80, a=i-1, b=j-1; a!=-1 || b!=-1;a--,b--,k--,m=n/8)
	{
		n=t[a]-'0'+d[b]-'0';
		wynik[k]=((n+m)%8)+'0';
	}
	if (a==b)
	{
		if (m==1)
		{
			wynik[k]='1';
			return wynik[82];
		}
		else
		{
			return wynik[82];
		}
	}
	else
	{
		if(a>b)
		{
			if (m==1)
			{
				for (;a!=-1;a--,k--,m=n/8)
				{
					n=m+t[a]-'0';
					wynik[k]=(n%8)+'0';
				}
				if (m==1)
				{
					wynik[k]='1';
					return wynik[82];
				}
				else
				{
					return wynik[82];
				}
			}
			else //m=0
			{
				for (;a!=-1;a--,k--)
				{
					tmp=t[a];
					t[a]=wynik[k];
					wynik[k]=tmp;
				}
				return wynik[82];
			}
		}
		else //a<b
		{
			if (m==1)
			{
				for (;b!=-1;b--,k--,m=n/8)
				{
					n=m+d[b]-'0';
					wynik[k]=(n%8)+'0';
				}
				if (m==1)
				{
					wynik[k]='1';
					return wynik[82];
				}
				else
				{
					return wynik[82];
				}
			}
			else //m=0
			{
				for (;b!=-1;b--,k--)
				{
					tmp=d[b];
					d[b]=wynik[k];
					wynik[k]=tmp;
				}
				return wynik[82];
			}
		}
	}
}