现在的位置: 首页 > 综合 > 正文

IDL学习笔记(2)–函数与过程

2013年12月06日 ⁄ 综合 ⁄ 共 791字 ⁄ 字号 评论关闭

作者:fbysss
msn:jameslastchina@hotmail.com 
blog:blog.csdn.net/fbysss
声明:本文由fbysss原创,转载请注明出处
关键字:IDL

一、Function 与Procedure
1.Function
  
函数,有返回值,
   定义方式:Function funcName param1,param2......
   调用方式:varName = funcName(param1,param2...);注意:必须用括号,而且前面必须有一个变量,否则都是语法错误。
2.Procedure
  过程,无返回值
  定义方式:Pro proName param1,param2....
  调用方式:proName,param1,param2...  注意:必须用逗号把过程名与参数隔开。
  小评:函数和过程,何必要搞这么不同的形式来调用呢?特别是过程的调用形式,很难看。实在不解。
二、pro文件结构:
   一个pro文件里面可以有多个pro,或者function,但必须有一个主pro和文件名保持一致。相当于c中的main函数,即程序的入口。
实验过程:
新建立一个temp.pro
内容为:
PRO ADD, A, B
   PRINT, 'A = ', A
   PRINT, 'B = ', B
   A = A + B
   PRINT, 'A = ', A
END
PRO MYPROCEDURE
   X = 5 
   ; Call the ADD procedure:
   ADD, 3, X  
END
编译通过,运行时出现错误:
% Attempt to call undefined procedure/function: 'TEMP'.
% Execution halted at: $MAIN$         

把文件名修改为MYPROCEDURE或者把pro名修改为temp之后,编译通过。
一旦编译通过一次,之后怎么改都可以了。不一致也行。不过还是建议按照标准来做。

抱歉!评论已关闭.