paip. erlang语法C++语法对比attilax总结
paip. erlang语法C++语法对比attilax总结
作者Attilax , EMAIL:1466519819@qq.com
来源:attilax的专栏
地址:http://blog.csdn.net/attilax
Erlang
c++
注释
%
//
变量定义
大写字母开头的名字(比如Address),表示一个变量
下划线“_”表示任意变量
{ok, S} = file:open("test2.dat", write),
语句分隔
,逗号顺序语句之间,用逗号“,”分隔
并列的逻辑分支之间,用分号“;”分界;。
; 分号表示顺序语句
并列语句只能使用多线程方式.
函数定义
函数名称( 变量) –>
Temp = 10 * Number,
Temp + 1.
函数定义结束用一个句号“.”
函数定义使用
函数名称( 变量) {}
函数返回值
Erlang没有return语句,最后执行的那条语句的执行结果就是返回值。
return语句
逻辑分支语句
times10( Number ) –>
case Number of
0 -> 1;
_ ->
Temp = 10 * Number,
Temp + 1
end.
case of语句需要用end结尾,end之前不需要有标点符号
switch语句
当参数等于0的时候,直接返1;否则,就乘以10,然后加1,然后返回
等价逻辑分支
times10( 0 ) –> 1;
times10( Number ) –>
Temp = 10 * Number,
Temp + 1.
由于两个函数分支的函数名相同,而且参数个数相同,而且两个函数定义分支之间采用分号“;”分隔,说明这是同一个函数的定义。函数式编程语言中,这种定义方式很常见,看起来形式很整齐,宛如数学公式。
数组
{ }
数组赋值
{First, Second} = {1, 2}
我们还可以对复合Tuple数据结构进行赋值,比如
{A, {B, C}, D} = { 1, {2, 3}, 4 }
输出变量到控制台
io:format(S, "~w~n", [123]).