征集c语言的多字节的加减乘除?
c语言的:我们经常会遇到多字节的加、减、乘、除,现在请各位大虾讨论一下,多字节的算法问题?
for example:
1. a[]={0x20,0x21,0x22,0x23}
b[]={0x10,0x11,0x12,0x13}
求a+b;
a-b;
a*b;
a/b;
如果我们用通用格式些,如:
void add_multibyte(void *a,void *b,void *c,char len_a,char len_b,char len_c)
{
/*
*a,数据a的起始地址;len_a,数据a的长度;
*b,数据b的起始地址;len_b,数据b的长度;
*c,数据c的起始地址; len_c,数据c的长度;
实现将 数据a+数据b 的值放到数据c的起始地址中。
*/
}
void sub_multibyte(void *a,void *b,char len)
{
/*
*a,数据a的起始地址;
*b,数据b的起始地址;
实现将 长度为len的 数据a - 数据b 的值放到数据a的起始地址中。
*/
}
void mul_multibyte(void *a,void *b,void *c,char len_a,char len_b,char len_c)
{
/*
*a,数据a的起始地址;len_a,数据a的长度;
*b,数据b的起始地址;len_b,数据b的长度;
*c,数据c的起始地址; len_c,数据c的长度;
实现将 数据a * 数据b 的值放到数据c的起始地址中。
*/
}
void sub_multibyte(void *a,void *b,char len_a,char len_b)
{
/*
*a,数据a的起始地址;len_a,数据a的长度;
*b,数据b的起始地址;len_b,数据b的长度;
实现将 数据a / 数据b 的值放到数据a的起始地址中。
*/
}
这样就可是实现外部的调用了,