例如:抽象数据类型“复数”的实现
typedef struct{
float realpart; /*实部*/
float imagpart;
}Complex /*定义复数抽象类型,定义名为Complex的struct结构体*/
void assign(Complex*A, float real, float imag); /* 赋值,Complex *A代表将结构体地址传入*/
void add (Complex*A, Complex A , Complex B); /*A+B*/
void minus (Complex*c, Complex A , Complex B); /*A-B*/
void multiply (Complex*c, Complex A , Complex B); /*A*B*/
void divide (Complex*c, Complex A , Complex B); /*A/B*/
void assign (Complex*A, float real,float imag){
A->realpart = real; /*实部赋值*/
A->imagpart = imag;/*虚部赋值*/
} // End of assign: 赋值
void add (Complex*C, Complex A , Complex B){
c-> realpart = A.realpart + B.realpart; /*实部相加*/
c-> imagpart= A.imagpar + B.imagpart; /*虚部相加*/
} // End of Add(); c=A+B