我在从SFunction参数读取字符串(文件名:'aFile.csv')时遇到问题。我得到的错误对我没有意义
我正在使用MSVC ++(2017)。
错误似乎来自mxGetString
中的ssGetSFcParam以下是包含问题的代码片段(在mdlStart方法中)
static void mdlStart(SimStruct *S)
{
FILE* fp;
char buffer[255];
char* fileStr;
char* paramStr;
int_T fstatus;
int_T pstatus;
const int_T flen = (int_T)mxGetN((ssGetSFcnParam(S, 0)))*sizeof(char)+1;
const int_T plen = (int_T)mxGetN((ssGetSFcnParam(S, 1)))*sizeof(char)+1;
fileStr = mxMalloc(flen);
paramStr = mxMalloc(plen);
fstatus = mxGetString((ssGetSFcParam(S,0)),fileStr,flen);
pstatus = mxGetString((ssGetSFcParam(S,1)),paramStr,plen);
real_T* Defval = (real_T *)mxGetData(PARAM_DEF2(S));
fp = fopen(fileStr, "r");
// additional code here, but has nothing to do with the error
mxFree(flen);
mxFree(plen);
fclose(fp);
}
使用mex时出错
创建库FileReader.lib和对象FileReader.exp FileReader.obj:错误LNK2019:未解析的外部符号 函数mdlStart FileReader.mexw64中引用了ssGetSFcParam: 致命错误LNK1120:1个未解析的外部
答案 0 :(得分:0)
错误消息说明了所有内容:没有名为ssGetSFcParam
的S函数方法。您需要使用已使用过两次的ssGetSFcnParam
,然后再输入两次错字。