m程序设计 第7讲子程序、过程、自定义函数 桑角染 FoxproForWindowshttp://cc.synu.edu.cn
FoxPro For Windows http://cc.synu.edu.cn 1 FoxPro程序设计 第7讲 子程序、过程、自定义函数
ah程序设计 学生管理系统程序 学生管理系统 主程序 子程序 数据录入 数据维护 数据查询 打印报表 子程序 按学号查询 按姓名查询 按组合条件查询 子程序 主程序调用子程程序,子程又调子程,嵌套最多3层 FoxproForWindowshttp://cc.synu.edu.cn 2
FoxPro For Windows http://cc.synu.edu.cn 2 FoxPro程序设计 学生管理系统程序 数据录入 数据维护 按学号查询 按姓名查询 按组合条件查询 数据查询 打印报表 学生管理系统 主程序 子程序 子程序 主程序调用子程程序,子程又调子程,嵌套最多32层。 子程序
m程序设计 子程序 子程序的建立: 主程序 MoD|coMM(*·prg) 子程序1 子程序2 子程序返回主程序的命令: RETURN ITO MASTERI 子程序3 子程序调用 Do<子程序名>WTH<参数表>] FoxproForWindowshttp://cc.synu.edu.cn 3
FoxPro For Windows http://cc.synu.edu.cn 3 FoxPro程序设计 子程序 子程序的建立: MODI COMM (*.prg) 子程序返回主程序的命令: RETURN [TO MASTER] 子程序调用: DO<子程序名 > [WITH<参数表>] 主程序 子程序1 子程序3 子程序2
m程序设计 【例】现有一个主程序MAN和二个子程序SUB1PRG和SUB2PRG *MAIN PRG *SUB1.PRG ?####1 ?$$$$1 ####1 DO SUB1 RETURN ###2 ?####2 $$$$2 DO SUB2 SUB2.PRG ####3 ?####3 ?"$$$$2 RETURN RETURN 复杂的信息管理系统,通常由主程序调用若干子程序完成。 子程序都是以文件方式独立存盘的,调用时读入內存,因此影 响运行速度。有没有更好的办法呢? FoxproForWindowshttp://cc.synu.edu.cn
FoxPro For Windows http://cc.synu.edu.cn 4 FoxPro程序设计 【例】现有一个主程序MAIN和二个子程序SUB1.PRG和SUB2.PRG. *MAIN.PRG ? '# # # #1' DO SUB1 ? '# # # #2' DO SUB2 ? '# # # #3' RETURN 复杂的信息管理系统,通常由主程序调用若干子程序完成。 子程序都是以文件方式独立存盘的,调用时读入内存,因此影 响运行速度。有没有更好的办法呢? *SUB1.PRG ? '$ $ $ $1‘ RETURN *SUB2.PRG ? '$ $ $ $2‘ RETURN # # # #1 $ $ $ $1 # # # #2 $ $ $ $2 # # # #3
m程序设计 过程与过程文件 过程文件:把一个个分散的子程序组合成一个大的文件。 执行时,用打开过程文件命令一次调入内存 过程:过程文件中的每一个子程序叫做一个过程。 1.过程的定义 PROCEDURE<过程名> [ PARAMETERS<形式参数表] <语句序列> RETURN 说明: 过程与子程序的区别就在于过程是以 PROCEDURE命令开头。 过程名字母、下划线,<=10字符。 过程文件由一个或多个过程组成,并放于扩展名prg的磁盘文件中 过程文件中各个过程的排列顺序任意。 FoxproForWindowshttp://cc.synu.edu.cn 5
FoxPro For Windows http://cc.synu.edu.cn 5 FoxPro程序设计 过程文件: 把一个个分散的子程序组合成一个大的文件。 执行时,用打开过程文件命令一次调入内存。 过 程: 过程文件中的每一个子程序叫做一个过程。 过程与过程文件 1.过程的定义 PROCEDURE <过程名> [PARAMETERS <形式参数表>] <语句序列> RETURN 说明: •过程与子程序的区别就在于过程是以PROCEDURE命令开头。 •过程名字母、下划线,<=10字符。 •过程文件由一个或多个过程组成,并放于扩展名.prg的磁盘文件中。 •过程文件中各个过程的排列顺序任意