c语言printf一定要加换行吗,请问printf是输出后换行吗?如果不是,什么才是输出后换行呢?是,什么才是输出后不换行呢?...

procedure 是过程关键字,  function 是函数关键字  ,c++ 和c 都是省去了这种关键字,所以没有对应。。。。

procedure 可以认为是无返回值的函数。。。。

procedure proc(a:int) ;   就等于  c 中的  void proc(int a);  procedure 和void不能等价,

procedue 是个类型说明的关键字,C语言和C++没有这种东西,所以不能完全等价

你可以写   void proc(void)    却不能写   procedure proc(procedure)

pascal中有类型说明符 号,  var   变量声明(此后的代码全是变量声明),等价basic中的

dim ,c,c++中没有。。。。  procedure  过程说明符  等价 basic 中的 Sub  ,c中同样没有。。。function   函数说明  basic中也是 funciton,c 和c++没有。。。。。。。

c和C++ 对过程和函数不做区分,  只要返回值是  void函数就是过程,void是返回值类型,不是过程声明关键字,c语言,c++出现较晚,语法不是很严格,很多感觉不必要的关键词都没有定义了。。。

bisic  pascal  返回值都写在后边   如  function a(i:char):char,c,和c++是前面 ,

char a(char i)  ,可以看出在对应关系上 function  是多余的一个关键字,procedure 也一样 。。。。

其实函数和过程还是有区别的,主要区别是过程退出时,什么都不用管,而函数必须要去复原堆栈,因为要取返回值,调用者需要调用前保存返回的堆栈位置,过程则不用保存,函数调用后还要多一个步奏,取返回值,取完后复原堆栈,在编译上有区别,如果你有返回值却从来不用,倒不如写成  procedure  运行更快。。。。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值