从 S 函数创建 .txt 文件

creating .txt file from S function

我有一个 C mex S 函数,可以将输出打印到 .txt 文件。 mdlStart(SimStruct *S) 中的这段代码创建 datafile.txt 文件并附加输出。

  void** pwork = ssGetPWork(S);
  FILE *datafile;

  datafile = fopen("datafile.txt","a");
  pwork[0] =  datafile;

所以现在我想通过S函数掩码从用户那里动态获取.txt文件的文件名。所以,如何从 S 函数中的掩码接收文件名的字符串值。

首先,你需要声明mask参数

然后,您需要将文件名传递给 SFunction 参数

最后,您将在 sfunction 中使用参数,如下所示:

 mxGetPr(ssGetSFcnParam(S,0));

参见:

http://www.mathworks.com/help/simulink/sfg/ssgetsfcnparam.html http://www.mathworks.com/matlabcentral/answers/36028-integer-parameters-to-c-mex-s-function