一个关于pascal语言function的问题。

resulttype(a,b:types):types;beginif(a>reals)or(b>reals)thenbeginerror(33);resulttype:... resulttype(a,b:types):types;
begin
if(a>reals)or(b>reals)
then begin
error(33);
resulttype:=notyp
end
.......
end
请问:resulttype:=notyp,这句话是在干嘛?调用的话少一个参数啊。。。。不是调用的话,怎么会给 function赋值呢。。。
如果把它改成c语言会是什么样子啊?
谢谢!!
展开
 我来答
匿名用户
2013-12-28
展开全部
就是给函数返回值的,但是并不退出函数,而是继续执行下面的语句,格式为 函数名:=值(值的类型与函数返回值相同,一个函数里可以多次使用,可以理解为就是给一个变量赋值,最后返回这个变量的值,pascal里这个变量就可以是函数名,这样不用再加其他语句,在c里相当于定义一个局部变量,把算出来的值赋给这个变量,并在函数跳出前加上return 这个变量;)
而free pascal里可以用exit(返回值);的语句exit是保留字,语句作用与c里的return 返回值;作用完全相同。
追问
那要是给函数名赋值多次是不是函数返回最后一次的赋值?
追答
是的,
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式