annotate CbC-examples/matrix/matrix.c @ 42:9e4f9e20b8f1

add some examples.
author kent@teto.cr.ie.u-ryukyu.ac.jp
date Mon, 25 Jan 2010 17:13:59 +0900
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
42
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
1 #include "matrix.h"
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
2
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
3 void
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
4 *create_matrix(size_t size, int row, int col)
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
5 {
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
6 int i;
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
7 void *body;
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
8 void **ret;
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
9
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
10 ret = malloc( size*row*col + sizeof(void*)*row );
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
11 if (ret==NULL) return NULL;
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
12
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
13 body = (void*)(ret+row);
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
14 for( i=0; i<row; i++){
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
15 ret[i] = body + size*col*i;
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
16 }
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
17 return ret;
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
18 }
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
19
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
20
9e4f9e20b8f1 add some examples.
kent@teto.cr.ie.u-ryukyu.ac.jp
parents:
diff changeset
21