fread(fid,[2,3],'int32') 是什么意思

test.txt
a=[1 2 3;4 5 6];
fid=fopen('text.txt','w');
count=fwrite(fid,a,'int32')
closestatus=fclose(fid)

fid=fopen('test.txt','r');
a=fread(fid,[2 3],'int32');
closestatus=fclose(fid);
b=magic(3)
c=a*b

这里的[2 3]是什么意思?

这是matlab的程序吧?
发到matlab版块比较好。
可以参看matlab官方文档http://www.mathworks.com/help/techdoc/ref/fread.html
[2,3]是1个2*3矩阵。
b是3阶幻方。

程序大体意思应该是把矩阵a写入到text.txt中,再读出来,和b乘一下。大概是检测读写函数的。
(怀疑fid=fopen('test.txt','r');应该是fid=fopen('text.txt','r');)
fread(fid,[2,3],'int32') 意思就是从文件中按int32格式读一个2*3的矩阵,赋给a。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-04-20
fread是MATLAB读取文件的函数,fid是游标指针,代表txt文件,[2,3]表示文件的格式,两行3列,int32表示文件中数据类型,32位整型
第2个回答  2010-12-14
fread(fid,[2,3],'int32') 这是一个函数调用, 应该可以理解,因为看不到你的完整程序,我只能大概猜想下,它接受3个实参:
1、fid 应该是一个(类或者用户自定义类型的)对象
2、[2,3] 这里操作符“ [] ” ,应该是被重载过了,具体实现功能还真猜不了
3、‘int32’ 这个我也有点有不解,最后把 前后相关的完整程序 贴上来
相似回答