这个程序中需要注意的地方是mxCalloc函数,它代替了标准C程序中的calloc函数用于动态分配内存,而mxCalloc函数采用的是MATLAB的内存管理机制,并将所有申请的内存初始化为0,因此凡是C代码需要使用calloc函数的地方,对应的Mex文件应该使用mxCalloc函数。同样,凡是C代码需要使用realloc函数的地方,对应的Mex文件应该使用mxRealloc函数。
在MATLAB命令窗口中对revord.cpp程序代码编译链接: >> mex revord.cpp
在MATLAB命令窗口中对C-MEX文件revord.dll进行测试: >> x='I am student.'; >> revord(x) ans = .tneduts ma