今天的Erlang Thursday继续研究c模块,讲的函数是 c:m/1.
c:m/1 入参是一个表示模块名字的原子,返回值是这个模块的信息。它打印出来的信息包括编译的日期、时间和编译选项,还有装载的目标(BEAM)文件以及这个模块中导出函数组成的列表。
我们来看看erlang中的string模块。
|
|
我们可以看到这个模块是2014年11月28日在我的机器上编译的,还看到 warnings_as_errors 和 debug_info 这两个编译选项打开了,还有beam文件的路径以及string模块所有导出的不同函数。
接着我们看看在erlang shell里编译的模块。
|
|
c:m(fizzubzz)的输出显示fizzbuzz被编译了,并且是从我的用户目录下的tmp目录装载的,同时还有一个导出函数fizzbuzz/1 和在每个模块都有的两个版本导出函数module_info。
今天讲的这个函数不是你每天都可能用的函数,不过了解它对你调试和检查你的erlang应用很有帮助。