summaryrefslogtreecommitdiffstats
path: root/.vim/c-support/codesnippets/calloc_int_matrix.c
diff options
context:
space:
mode:
authorbnewbold <bnewbold@robocracy.org>2010-03-25 06:29:54 -0400
committerbnewbold <bnewbold@robocracy.org>2010-03-25 06:29:54 -0400
commit0bf28391b00b1e28c44324bcd7647df416314667 (patch)
tree6dda90e70218861975deb408eb21b2ff00eb5ef6 /.vim/c-support/codesnippets/calloc_int_matrix.c
parent564a2d0d39c8e1fb79ee800973848b2442833356 (diff)
downloadopenwrt-repro-0bf28391b00b1e28c44324bcd7647df416314667.tar.gz
openwrt-repro-0bf28391b00b1e28c44324bcd7647df416314667.zip
lots and lots of vim stuff for c development...
Diffstat (limited to '.vim/c-support/codesnippets/calloc_int_matrix.c')
-rw-r--r--.vim/c-support/codesnippets/calloc_int_matrix.c35
1 files changed, 35 insertions, 0 deletions
diff --git a/.vim/c-support/codesnippets/calloc_int_matrix.c b/.vim/c-support/codesnippets/calloc_int_matrix.c
new file mode 100644
index 0000000..e21215b
--- /dev/null
+++ b/.vim/c-support/codesnippets/calloc_int_matrix.c
@@ -0,0 +1,35 @@
+
+/*
+ * === FUNCTION ======================================================================
+ * Name: calloc_int_matrix
+ * Description: Allocate a dynamic int-matrix of size rows*columns; return a pointer.
+ * =====================================================================================
+ */
+int**
+calloc_int_matrix ( int rows, int columns )
+{
+ int i;
+ int **m;
+ m = calloc ( rows, sizeof(int*) ); /* allocate pointer array */
+ assert( m != NULL ); /* abort if allocation failed */
+ *m = calloc ( rows*columns, sizeof(int) ); /* allocate data array */
+ assert(*m != NULL ); /* abort if allocation failed */
+ for ( i=1; i<rows; i+=1 ) /* set pointers */
+ m[i] = m[i-1] + columns;
+ return m;
+} /* ---------- end of function calloc_int_matrix ---------- */
+
+/*
+ * === FUNCTION ======================================================================
+ * Name: free_int_matrix
+ * Description: Free a dynamic int-matrix.
+ * =====================================================================================
+ */
+void
+free_int_matrix ( int **m )
+{
+ free(*m); /* free data array */
+ free( m); /* free pointer array */
+ return ;
+} /* ---------- end of function free_int_matrix ---------- */
+