diff options
Diffstat (limited to 'matrix/generic')
-rw-r--r-- | matrix/generic/elem_type.h | 3 | ||||
-rw-r--r-- | matrix/generic/mmatrix.c | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/matrix/generic/elem_type.h b/matrix/generic/elem_type.h index 2a6ffa8..bffe940 100644 --- a/matrix/generic/elem_type.h +++ b/matrix/generic/elem_type.h @@ -2,18 +2,21 @@ #define MATRIX_ELEM float #define MATRIX_ELEM_FMT "%f" +#define MATRIX_ELEM_WRITE_FMT "%.8f" #define MATRIX_ELEM_PTR(self) ((self)->data.f) #elif defined(MATRIX_USE_DOUBLE) #define MATRIX_ELEM double #define MATRIX_ELEM_FMT "%lf" +#define MATRIX_ELEM_WRITE_FMT "%.8lf" #define MATRIX_ELEM_PTR(self) ((self)->data.d) #elif defined(MATRIX_USE_INT) #define MATRIX_ELEM long #define MATRIX_ELEM_FMT "%ld" +#define MATRIX_ELEM_WRITE_FMT "%ld" #define MATRIX_ELEM_PTR(self) ((self)->data.i) #endif diff --git a/matrix/generic/mmatrix.c b/matrix/generic/mmatrix.c index 75d1eb1..2045d65 100644 --- a/matrix/generic/mmatrix.c +++ b/matrix/generic/mmatrix.c @@ -86,7 +86,7 @@ int nerv_matrix_(save)(lua_State *L) { { MATRIX_ELEM *row = MATRIX_ROW_PTR(self, i); for (j = 0; j < ncol; j++) - if (fprintf(fp, MATRIX_ELEM_FMT " ", row[j]) < 0) + if (fprintf(fp, MATRIX_ELEM_WRITE_FMT " ", row[j]) < 0) { free(self); return 0; |