C语言中声明 const int i = 2;
在另一个模块中使用此变量 extern const int i;
C++中另一个模块中使用此变量 extern const int i = 2;
如果C++使用C中的extern变量,则extern "C" const int i = 2;
//C和C++按照行存储数据,MATLAB按照列存储数据
//MATLAB中提供四个函数来读写二进制文件,fopen(),fread(),fwrite(),fclose()
将双精度矩阵 以 单精度浮点数类型 存入二进制文件
%生成一个2行3列的双精度浮点数类型的矩阵
A = rand(2,3);
%在当前工作目录下,以二进制写方式打开文件
fid = fopen('test.dat','w');
%将矩阵A的元素以单精度浮点数类型写入fid关联的二进制文件
fwrite(fid,A,'single');
%将与fid关联的文件关闭
fclose(fid);
以单精度浮点数类型读入MATLAB
%在当前工作目录下以二进制读方式打开文件
fid = fopen('test.dat','r');
%将6*1的矩阵,变成2*3的矩阵
B = reshape(B,2,3);
%从与fid关联的二进制文件读取6个元素,每个元素以单精度浮点类型解析
B = fread(fid,2*3,'single');
%将与fid关联的文件关闭
fclose(fid);
C读取二进制数据
#include <stdio.h>
#include <stdlib.h>
int main(){
int i;
char *filename = "test.dat";
float data[6];
FILE *fs = fopen(filename,"r");
fread((void*)data,sizeof(float),6,fs);
fclose(fs);
for(i=0;i<6;i++){
printf("%f\n",data[i]);
}
return 0;
}
C++读取实例写入的test.dat
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main(){
float data[6];
string filename = "test.dat";
ifstream fs;
fs.open(filename,ios_base::binary | ios_base::in);
fs.read(reinterpret_cast<char*>(data),sizeof(float)*6);
fs.close();
for(int i=0;i<6;i++){
cout<<data[i]<<endl;
}
return 0;
}
在另一个模块中使用此变量 extern const int i;
C++中另一个模块中使用此变量 extern const int i = 2;
如果C++使用C中的extern变量,则extern "C" const int i = 2;
//C和C++按照行存储数据,MATLAB按照列存储数据
//MATLAB中提供四个函数来读写二进制文件,fopen(),fread(),fwrite(),fclose()
将双精度矩阵 以 单精度浮点数类型 存入二进制文件
%生成一个2行3列的双精度浮点数类型的矩阵
A = rand(2,3);
%在当前工作目录下,以二进制写方式打开文件
fid = fopen('test.dat','w');
%将矩阵A的元素以单精度浮点数类型写入fid关联的二进制文件
fwrite(fid,A,'single');
%将与fid关联的文件关闭
fclose(fid);
以单精度浮点数类型读入MATLAB
%在当前工作目录下以二进制读方式打开文件
fid = fopen('test.dat','r');
%将6*1的矩阵,变成2*3的矩阵
B = reshape(B,2,3);
%从与fid关联的二进制文件读取6个元素,每个元素以单精度浮点类型解析
B = fread(fid,2*3,'single');
%将与fid关联的文件关闭
fclose(fid);
C读取二进制数据
#include <stdio.h>
#include <stdlib.h>
int main(){
int i;
char *filename = "test.dat";
float data[6];
FILE *fs = fopen(filename,"r");
fread((void*)data,sizeof(float),6,fs);
fclose(fs);
for(i=0;i<6;i++){
printf("%f\n",data[i]);
}
return 0;
}
C++读取实例写入的test.dat
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main(){
float data[6];
string filename = "test.dat";
ifstream fs;
fs.open(filename,ios_base::binary | ios_base::in);
fs.read(reinterpret_cast<char*>(data),sizeof(float)*6);
fs.close();
for(int i=0;i<6;i++){
cout<<data[i]<<endl;
}
return 0;
}