diff examples/mystring.c @ 6593:3da1f4a41455

[project @ 2007-04-27 08:08:19 by dbateman]
author dbateman
date Fri, 27 Apr 2007 08:08:19 +0000
parents
children 2aad75fcc93a
line wrap: on
line diff
new file mode 100644
--- /dev/null
+++ b/examples/mystring.c
@@ -0,0 +1,23 @@
+#include <string.h>
+#include "mex.h"
+
+void
+mexFunction (int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
+{
+  int i, j, m, n;
+  mxChar *pi, *po;
+
+  if (nrhs != 1 || ! mxIsChar (prhs[0]) || 
+      mxGetNumberOfDimensions (prhs[0]) > 2)
+    mexErrMsgTxt ("expecting char matrix");
+
+  m = mxGetM (prhs[0]);
+  n = mxGetN (prhs[0]);
+  pi = mxGetChars (prhs[0]);
+  plhs[0] = mxCreateNumericMatrix (m, n, mxCHAR_CLASS, mxREAL);
+  po = mxGetChars (plhs[0]);
+
+  for (j = 0; j < n; j++)
+    for (i = 0; i < m; i++)
+      po [j*m + m - 1 - i] = pi [j*m + i];
+}