Matlab逆向工程
Seek Source code of Matlab
1、type函数
在命令窗口输入“type+函数名”,则命令窗口会显示函数的源代码,例如type regress(其中regress是用来做线性回归的一个函数)。
2、open函数
在命令窗口输入“open+函数名”,则打开了函数名.m文件,例如open regress。
3、edit函数
在命令窗口输入“edit+函数名”,则打开了函数名.m文件,可修改调试,例如edit regress。
4、故意写错函数的参数或类型
当你写错函数的参数或类型后,命令窗口会提示”???error using ==> open at 99″之的错误提示,点击下划线位置,就能打开函数的m文件。
5、安装目录中搜索
在安装目录(MATLAB\toolbox)中搜索你要找的函数名,找到后打开即可。
6、Ctrl+D
最简单方便的一种方法,鼠标划中函数名,按CTRL+D即可打开函数的m文件
其他
MATALB属于半开源软件,其中很多函数可以通过“open/edit/type+filename”命令进行编辑和查看源代码。但是有一些函数仅仅可以找到它的帮助文档,却无法看到具体的源代码,比如min,fft,sum等函数,因为这些函数属于MATLAB的built-in function(内置函数),即MATLAB的built-in function的代码是不公开的,有人说这些函数的算法是最优化的,保证较低的时间复杂度提高效率。
要确定哪些函数可以看代码哪些函数不可以看代码,可以通过which命令:
上图中的函数fft, sum, min属于MATLAB的built-in function,无法看代码,只能通过“help/type+filename”来看帮助文档,通过这个路径一路查下去,M文件里面也只有帮助文档,没有源代码。最后一个函数axis.m就不是built-in函数,可以通过 “edit/open/type +filename”来查看源代码。