Main Content

提示用户在 C MEX 文件中提供输入

由于 MATLAB® 不使用 stdinstdout,因此不要使用 scanfprintf 等 C/C++ 函数来提示用户进行输入。以下示例说明如何使用 mexCallMATLABinput 函数从用户获取数字。

#include "mex.h"
#include "string.h"
void mexFunction( int nlhs, mxArray *plhs[],
                  int nrhs, const mxArray *prhs[] )
{
  mxArray   *new_number, *str;
  double out;

  str = mxCreateString("Enter extension:  ");
  mexCallMATLAB(1,&new_number,1,&str,"input");
  out = mxGetScalar(new_number);
  mexPrintf("You entered: %.0f ", out);
  mxDestroyArray(new_number);
  mxDestroyArray(str);
  return;
 }

另请参阅

| |

相关主题