3
#include "matrixdefs.h"
4
#include "local_proto.h"
7
* m_add: matrix addition (returns c = a + b)
10
int m_add(MATRIX * a, MATRIX * b, MATRIX * c)
14
register double *ap, *bp, *mp;
18
return error("+: arg1 not defined\n");
19
else if (b->nrows == 0)
20
return error("+: arg2 not defined\n");
22
/* check for conformity */
23
if ((a->nrows != b->nrows) || (a->ncols != b->ncols)) {
24
sprintf(message, "+: matrices not conformable, %d x %d + %d x %d\n",
25
a->nrows, a->ncols, b->nrows, b->ncols);
26
return error(message);
36
*mp++ = *ap++ + *bp++;