cs1.6 amxx编程 return临时教程 -- 作者:偶萤蛉(Oinling)
return的语法:
return 返回值;
返回值可以是字面量,运算表达式,常量,变量,函数等等.
也可以省略返回值,若是省略,则默认为0.
return有两种作用:
1:立即退出函数.
2:设定函数的数值;
正常情况下,函数体的 } 符号被运行时才会退出函数,回到函数被调用的那一行位置.
但如果函数体内有return被运行后将立即退出函数,其下方的代码统统不会被运行.
return还能设置函数的数值,函数可以看做一个数值,通常称呼函数的数值为返回值.
用return设置返回值时,必须与函数拥有相同的标签.否则会触发警告或报错:标签不匹配.
函数体内,可以在不同if else语句的代码块中使用return保留词,表示可以在各种不同的条件下退出函数,并设定不同的返回值.
函数体内有多个return时,只要其中一个设定了返回值,那么其它的return也必须设定返回值.并且函数体的 } 符号上一行也必须用return设定返回值.
// 定义一个等于10的函数FunctionA
static FunctionA() return 10;
// 定义一个等于参数a b c相乘的函数FunctionB
static FunctionB(a, b, c) return a * b * c;
// 定义一个等于0的函数FunctionC(因为return省略了返回值)
static FunctionC()
{
// 如果在0至4之中的随机数为4,那么立即退出函数,不执行下方的server_print函数
if (random(5) == 4) return;
server_print("[AMXX]测试.");
}
// 定义一个返回值视情况而定的函数FunctionD
static FunctionD()
{
// 若随机数0至4等于4,那么设定函数等于5,并退出函数
if (random(5) == 4) return 5;
// 由于上面的if分支中,用return设定了返回值,因此函数体结尾也必须用return设定返回值
// 设定函数等于44444,并退出函数
return 44444;
}
// 定义一个返回值视情况而定的,带有Float:标签的函数FunctionE
static Float:FunctionE()
{
// 由于Function函数有Float:标签,因此返回值也必须拥有相同的标签,浮点数字面量默认带有Float:标签
if (random(5) == 4) return 5.0;
const Float:constant = 44444.0;
// 若使用自定义符号作为返回值,那么自定义符号也要拥有Float:标签
return constant;
}