#include #include #include #include #include /*********************************************************************************/ void CreateInts (int **vint, int dim) { if ((*vint = (int *) malloc (sizeof(int)*dim)) == NULL) { printf ("Memory Error (CreateInts(%d))\n", dim); exit (1); } } void RemoveInts (int **vint) { if (*vint != NULL) { free (*vint); *vint = NULL; } } void InitInts (int *vint, int dim, int frst, int incr) { int i, *p1 = vint, num = frst; for (i=0; i0; i--) { *(pi) -= *(pi-1); pi--; } } void ComputeHeaderfromLength (int *len, int *head, int dim) { int i, *pi1 = len, *pi2 = head; for (i=0; i '9')) && (*pchar != '+') && (*pchar != '-')) { j++; pchar++; } if (j < numC) { if ((*pchar == '+') || (*pchar == '-')) { neg = (*pchar == '-'); j++; pchar++; } while ((j < numC) && (*pchar >= '0') && (*pchar <= '9')) { num = num * 10 + (*pchar - 48); j++; pchar++; } } if (neg) num = -num; *pnum = num + shft; } void GetIntsFromString (char *string, int *vec, int numN, int numC, int shft) { int i, *pint = vec; char *pchar = string; for (i=0; i '9')) && (*pchar != '+') && (*pchar != '-') && (*pchar != '.')) { j++; pchar++; } if (j < numC) { if ((*pchar == '+') || (*pchar == '-')) { neg = (*pchar == '-'); j++; pchar++; } if (j < numC) { if (*pchar != '.') while ((j < numC) && (*pchar >= '0') && (*pchar <= '9')) { num = num * 10 + (*pchar - 48); j++; pchar++; } if (j < numC) { if (*pchar == '.') { j++; pchar++; while ((j < numC) && (*pchar >= '0') && (*pchar <= '9')) { frac /= 10; num += (*pchar-48) * frac; j++; pchar++; } } if (neg) num = -num; if (j < numC) { if ((*pchar == 'e') || (*pchar == 'E') || (*pchar == 'd') || (*pchar == 'D')) { neg = 0; j++; pchar++; if (j < numC) { if ((*pchar == '+') || (*pchar == '-')) { neg = (*pchar == '-'); j++; pchar++; } if (j < numC) { while ((j < numC) && (*pchar >= '0') && (*pchar <= '9')) { exp = exp*10 + (*pchar-48); j++; pchar++; } if (neg) exp = -exp; for (k=0; kexp; k--) num /= 10; } } } } } else if (neg) num = -num; } } *pdbl = num; } void GetDoublesFromString (char *string, double *vec, int numN, int numC) { int i; double *paux = vec; char *pchar = string; for (i=0; i