matlab定义函数
语法:function [输出] = 函数名(输入)
例: function [output1, output2] = velocity(v0, a, t0)
只有一个输出的时候不需要使用 [] 。
例: function out = add(a, b);
要求:matlab的文件名与函数名需要相同才可以运行,对于一个文件中只有一个函数而言。
一个 .m 文件存在多个函数
函数的定义与上述一致
需要注意的是,多了一个主函数,若干个从函数,函数以end结尾,例如以下代码:
%% 主函数
function optimise()
clear
close all
% 下面定义的函数可以在这里调用
readFile(filename, dataline);
writeFile(filename, R0, L0);
% 注意
end
%% 读取文件函数
function data = readFile(filename, dataline)
fid = fopen(filename); % 文件名
lines= textscan(fid,'%f %[^\n]',1,'Headerlines',dataline-1); % 跳过2读下面的1行,修改读取格式即可获取浮点类型的数据
data = lines{1};
end
%% 参数写入函数
function [] = writeFile(filename, R0, L0)
% 打开文件进行写操作
fid = fopen(filename, 'w');
% 写入数据
fprintf(fid, '*SET,R0,%f\n*SET,L0,%f\n', R0, L0);
% 关闭文件
fclose(fid);
end
matlab的文件名需要与主函数的名称一致,程序才可以运行。
定义无返回值的函数
两种写法:
function [] = add()
function add()