#include<iostream>
#include<armadillo>
int D=5;
int M=4;
int main()
{
arma::fmat x; x.randn(D,1);
arma::fmat A; A.randn(M,D);
std::cout<<"x=
"<<x<<std::endl;
std::cout<<"A=
"<<A<<std::endl;
arma::vec v(10); v={1,2};
std::cout<<"v=
"<<v<<std::endl;
//load mat binary file
// std::string name="test_mat.dat";
// arma::mat test_mat;test_mat.load(name, arma::raw_binary);
// test_mat.print("test_mat");
//load mat ascii file
std::string name="matlab_data.dat";
arma::mat test_mat;
test_mat.load(name, arma::raw_ascii);
test_mat.print("test_mat");
test_mat(0,0)=0.123456789;
test_mat.raw_print("test_mat");
auto a_number = 0.12345678987654321;
std::cout << a_number << std::endl;
std::streamsize ss = std::cout.precision();
std::cout << "Default std::cout precision:
"<<ss<<std::endl;
return 0;
}
test_mat.load(name, arma::raw_ascii)
读入的是ASCII文件格式,需要在MATLAB中用dlmwrite
保存数据,而不是直接保存成.mat
格式。