使用 mex 读写文件
Reading and writing files using mex
我正在使用 windows visual studio。我想使用 mex 读取 C++ 中的 .txt 文件。这是最小的例子:
#include <mex.h>
#include <iostream>
#include <fstream>
void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
{
ifstream data;
return;
}
当我在matlab中运行 mex test.cpp
时,出现以下错误。
Error using mex test.cpp
G:\test.cpp(35)
: error C2065: 'ifstream' : undeclared identifier
G:\test.cpp(35)
: error C2146: syntax error : missing ';' before identifier 'data'
G:\test.cpp(35)
: error C2065: 'data' : undeclared identifier
我也想输出一个.txt文件,但是当我尝试ofstream
时出现了类似的错误。据我所知,我认为 matlab 无法识别 headers
#include <iostream>
#include <fstream>
我可以对 mex 中的 read/write 文件做些什么?除了 iostream 和 fstream 之外,mex 中还有另一种 reading/writing 文件的方式吗?
已解决。我意识到我只是忘了添加 using namespace std
。不敢相信我花了很多时间试图找出这个简单的错误。
我正在使用 windows visual studio。我想使用 mex 读取 C++ 中的 .txt 文件。这是最小的例子:
#include <mex.h>
#include <iostream>
#include <fstream>
void mexFunction(int nlhs, mxArray *plhs[], int nrhs, const mxArray *prhs[])
{
ifstream data;
return;
}
当我在matlab中运行 mex test.cpp
时,出现以下错误。
Error using mex test.cpp
G:\test.cpp(35)
: error C2065: 'ifstream' : undeclared identifier
G:\test.cpp(35)
: error C2146: syntax error : missing ';' before identifier 'data'
G:\test.cpp(35)
: error C2065: 'data' : undeclared identifier
我也想输出一个.txt文件,但是当我尝试ofstream
时出现了类似的错误。据我所知,我认为 matlab 无法识别 headers
#include <iostream>
#include <fstream>
我可以对 mex 中的 read/write 文件做些什么?除了 iostream 和 fstream 之外,mex 中还有另一种 reading/writing 文件的方式吗?
已解决。我意识到我只是忘了添加 using namespace std
。不敢相信我花了很多时间试图找出这个简单的错误。