Mercurial > hg > octave-nkf
view examples/fortrandemo.cc @ 19022:5eca3080c7cd
maint: Merge Stefan's changesets onto default after verification.
author | Rik <rik@octave.org> |
---|---|
date | Sat, 14 Jun 2014 13:24:46 -0700 |
parents | 4b32677b6229 |
children |
line wrap: on
line source
#include <octave/oct.h> #include <octave/f77-fcn.h> extern "C" { F77_RET_T F77_FUNC (fortransub, FORTSUB) (const int&, double*, F77_CHAR_ARG_DECL F77_CHAR_ARG_LEN_DECL); } DEFUN_DLD (fortrandemo, args, , "Fortran Demo") { octave_value_list retval; int nargin = args.length (); if (nargin != 1) print_usage (); else { NDArray a = args(0).array_value (); if (! error_state) { double *av = a.fortran_vec (); octave_idx_type na = a.numel (); OCTAVE_LOCAL_BUFFER (char, ctmp, 128); F77_XFCN (fortransub, FORTSUB, (na, av, ctmp F77_CHAR_ARG_LEN (128))); retval(1) = std::string (ctmp); retval(0) = a; } } return retval; }