Guidance in writing mexFunction for convert.c

2 次查看(过去 30 天)
I have data in CSV (comma seperated value) format, i need it in the libsvm format. I found a c code to do it: http://www.csie.ntu.edu.tw/~cjlin/libsvm/faqfiles/convert.c
But i want to call this in matlab. So i need to include a mexFunction in convert.c , could anyone guide me/help me out with writing this function?

采纳的回答

James Tursa
James Tursa 2013-12-23
Try putting this at the top of the file and then mex it:
// One input argument: The Filename
int main(int argc, char **argv);
#include "mex.h"
void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
{
int argc = 2;
char *argv[2];
if( nrhs == 1 && mxIsChar(prhs[0]) ) {
argv[1] = mxArrayToString(prhs[0]);
main(argc,argv);
mxFree(argv[1]);
} else {
mexErrMsgTxt("Expected one input, the filename");
}
}

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Write C Functions Callable from MATLAB (MEX Files) 的更多信息

标签

产品

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by