pascal 中的unit 如何使用?各unit的简介?

作者&投稿:柴香 (若有异议请与网页底部的电邮联系)
pascal如何调用系统函数~

Pascal中是可以使用单元,就是使用系统的函数。
可以在HELP中找到
用法如下
Program example;
uses unitname;
begin
end.

注意第二行,使用uses加上unit的名字。
Pascal中提供一些常用的unit,比如: crt,graph,dos,system
用法等同于c中的,可以直接使用unit中的函数。

当然可以自己编unit. 具体格式:
UNIT unitname;

INTERFACE

Type 后面是unit中需要用到的类型

Procedure aa(a:integer);
Procedure bb(b:char);
...
... 这一部分是所有函数和过程的首部

IMPLEMENTATION

procedure aa;
begin
...
end;
procedure bb;
begin
...
end;
...
...{这一部分是过程和函数的主体,注意已经没有形式参数表}

end.

Unit的大体结构就是这样,它的开始是Unit + 表达式,而不是Program
和Program一样,以end.结尾。
以unitname.pas存储,并编译,就会在缺省目录中得到unitname.tpu的文件。
这时候,就可以在程序中以uses unitname; 调用自己编写的单元文件了。

你问的是关于电脑的问题吗v

调用:uses 单元名
例如调用dos单元:
uses dos;

关于各单元的介绍:
SYSTEM TP的运行库,包括常用的标准函数和过程,可以在程序中直接使用,不需USES语句说明。
DOS 具有日期、时间、目录查找、程序执行等功能
CRT 具有屏幕模式控制、扩展键盘码、颜色、窗口、声音等 功能
PRINTER 支持打印输出操作。
GRAPH 高级图形软件包,支持多种图形适配器。
GRAPH3 实现TP3.0的图形软件包。
TURBO3 兼容TP3.0的源程序。
OVERLAY 实现高级覆盖管理

SYSTEM单元常用过程与函数
ABS(X) F 求变量的绝对值
ADDR(X) F 测变量地址
APPEND(F) P 打开一个存在的文本文件,并将文件指 针指向文件末尾准备添加元素
ARCTAN(X) F 反正切
ASSIGN(F,C) P 将字符串C所表示的外部文件名赋给文 件变量F
ASSIGNED(X) P 测试程序当中的指针或变量是否为空
BLOCKREAD(F,D,NUM) P 读类型文件。
BLOCKWRITE(F,D,NUM) P 写无类型文件
BREAK P 中止或结束循环
CHDIR(PATH) P 改变当前目录
CHR(X) F 求ASCII码值为X的字符
CLOSE(F) P 关闭文件
CONCAT(S1,S2...S3) F 字符串合并
CONTINUE P 继续循环
COPY(S,POS,LEN) F 返回一个字符串的子串
COS(X) F 余弦函数
CSEG F 返回CS寄存器的当前值
DEC(X) F X:=X-1
DELETE(S,POS,LEN) P 删除一个字符串的子串
DISPOSE(P) P 释放一个动态变量
DSEG F 返回DS寄存器的当前值
EOF(F) F 判断文件是否结束
EOLN(F) F 判断文件类型中的一行是否结束
ERASE(F) P 删除一个存在的外部文件。
EXIT P 过程中止
EXP(X) F 以E为底的指数函数
FILEPOS(F) F 文件记录的当前位置
FILESIZE(F) F 文件记录数
FILLCHAR(D,LEN,DATE) P 填充数值或字符
FLUSH(F) P 清空文件缓存区
FRAC(X) F 取实形变量的小数部分
FREEMEM(P,I) P 释放变长动态变量
GETDIR(DRV,PATH) P 取当前盘,当前目录
GETMEM(P,I) P 分配变长的动态变量,并把块地址存放在一个指针变量中
HALT P 立即中止程序执行,返回TP编辑器或DOS
HI(I) F 返回一个变量的高位字节
INSERT(S,D,POS) F 在一个字符串中某一位置开始插入一个子串
INT F 取整数部分
IORESULT F 返回最后一次输入/出操作的结果状态
LENGTH(S) F 取字符串的长度
LN(R) F 求自然对数
LO(I) F 返回一个变量的低位字节
MAXAVAIL F 返回最大内存空间
MEMAVAIL F 返回可用内存数目
MKDIR(PATH) P 建立一个子目录
MOVE(S,D,LEN) P 快传送
NEW(P) P 建立一个新的动态变量
ODD(X) F 判断一个变量的值是否为奇数
OFS(X) F 侧变量偏移地址
ORD(CH) F 求一个字符的ASCII码值
PARAMCOUNT F DOS参数串长度
PARAMSTR(N) F DOS参数串
PI F 圆周率的值
pos(str1,str2) f 测一个字符串中包含的另一个子串的开始位置
pred(x) f 求前驱
ptr(i) f 指针赋值
random f 返回0~1之间的随机实数
randomize p 初始化随机数发生器
read/readln(f,x) p 读入/输入数据
rename(f,str) p 给一个外部文件改名
reset(f) p 打开文件,并将文件指针指向开始,并准备读数据
rewrite(f) p 打开文件,并将文件指针指向开始,准备写资料
rmdir(path) p 删除一个子目录
round(x) f 求实数的近似数
runerror p 停止程序的运行
scrollto p 滚动显示窗口的某部分内容
seek(f,n) p 将文件指针定位于文件f的第n个文件成分上
seekrof(f) f 定位到文件尾
seekroln(f) f 定位到行尾
seg(n) f 测变量段地址
settextbuf(f) p 将输入/出缓冲区与一个文本文件建立关联
sin(x) f 正弦函数
sizeof(x) f 测变量大小
sptr f 返回sp寄存器的当前值
sqr(x) f 平方
sqrt(x) f 平方根
sseg f 返回ss寄存器的当前值
str(i,s) f 将一个整数转换成字符串
succ(X) f 后继函数
swap(x) f 交换一个变量的高位和低位字节
trunc(x) f 截去实数的小数部分
truncate(f) p 截去文件当前指针以后的内容
upcase(ch) f 将小写字母转换成大写字母
val(s,r,p) p 将一个字符串转换成数值
writeln(f,x) p 输出
dos单元常用过程与函数
getdate p 返回系统当前日期
detftime p 返回最后一次写入的日期和时间
gettime p 返回系统当前时间
packtime p 转换系统日期和时间,封装成4个字节的长整形格式
setdate p 设置系统当前日期
setftime p 写入新的系统日期和时间,覆盖系统最后一次写入的 系统日期和时间文件
settime p 设置系统当前时间
uppacktime p 将系统日期和时间转换成纪录格式
diskfree f 返回指定磁盘可用剩余空间
disksize f 返回指定磁盘的总容量
get/setverity p 返回/设置dos状态下的磁盘读写标记
fexpand f 返回函数名的全称
fsearch f 在一个目录中查找文件
fsplit f 将一个文件名分成目录、文件名、扩展名
findfirst p 在当前目录或指定目录下查找第一个与给定属性相匹 配的文件名

3 turbo pascal基本函数过程及解释
findnext p 返回下一个满足匹配条件的文件名
getfattr p 返回文件的属性
setfattr p 设置文件属性
gerintvec p 返回某个中断变量值
intr p 执行软中断
msdos p 执行dos 系统调用
setintvec p 设定中断值
exec p 通过一个特定命令行执行特定程序段
keep p 中断程序的执行但仍驻留在内存中
swapvectors p 用当前变量交换所有中断变量值
dosexitcode f 回到子程序出口
dosversion f 显示dos版本
crt单元
assigncrt(f) p 将文本文件f与显示器crt建立联系
clreol p 清除当前行光标所在位置以后的字符
clrscr p 清除当前窗口或屏幕,光标返回到左上角
delay(t) p 等待t毫秒
delline p 清除光标所在行上所有内容
gotoxy(x,y) p 将光标移到屏幕某处
highvideo p 选择高亮度显示字符
insline p 在当前光标位置插入空行
keypressed f 测定键盘输入状态
lowvideo p 低亮度显示字符
normvideo p 选择正常文本属性从光标所在位置开始显示字符
nosound p 关闭内部扬声器
readkey p 等待从键盘输入一个字符
sound(hz) p 以hz指定的频率发声
textbackground(soor) p 设置正文背景颜色
textcolor(color) p 设置正文前景颜色
textmode p 选择特定的文本显示模式
wherex/y f 返回当前光标位置的坐标值
window(x1,y1,x2,y2) p 在屏幕定义一个文本窗口

其他单元
chain(f) p 目标程序链接
execute(f) p 执行目标程序
mark(p) p 标记动态变量
release(p) p 释放动态变量区
srtinit p 屏幕初始化
crtline p 汉字屏幕方式转换
graphbackground(color) p 选择背景色
graphcolormode p 中分辨率彩色图形方式,320*200彩色
graphmode p 中分辨率黑白图形方式,320*200黑白
graphwindow(x1,y1,x2,y2,color)p 定义图形方式窗口
hires p 高分辨率单色图形方式,640*200黑白
hirescolor(color) p 高分辨率彩色图形方式,640*200彩色
palette(color) p 中分辨率彩色图形颜色组
ovrpath(path) p 指定覆盖文件路径
draw(x1,y1,x2,y2,color) p 画线
intr(n,m) p 8086中断调用
plot(x,y,color) p 画点
random(integer) f 产生随机整数
seg(x) f 测变量段地址
colortable(c1,c2,c3,c4) p 重定义颜色组
arc(x,y,radius,color) p 画圆弧
circle(x,y,radius,color) p 画圆
getpic(buffer,x1,x2,y1,y2) p 屏幕转储到屏幕
putpic(buffer,x,y) p 缓冲器转储到屏幕
getdotcolor(x,y) p 读点
fillscreen(color) p 填充屏幕
fillshape(x,y,fillcol,bordercol) p 填充一个区域


鄞州区13587747410: free pascal unit的用法 -
左丘李治带: 这个题最关键的就是怎样一次做加,一次做减.这可以利用-1的作用. 我不记得pascal中的注释该怎样写,运行程序先删掉注释,然后再运行. program pp; var i,n,sign:integer; //使用sign进行加减的控制. s:real; begin write('please input ...

鄞州区13587747410: pascal如何调用系统函数
左丘李治带: Pascal中是可以使用单元,就是使用系统的函数. 可以在HELP中找到 用法如下 Program example; uses unitname; begin end. 注意第二行,使用uses加上unit的名字. Pascal中提供一些常用的unit,比如: crt,graph,dos,system 用法等同于c中的...

鄞州区13587747410: pascal 中如何使用DOS命令 -
左丘李治带: dos命令是可以的:uses dos; begin exec(getenv('comspec'),'/c echo 111'); end.这样就会执行echo 111了

鄞州区13587747410: Pascal中如何使用单元程序设计(即.tpu文件)? -
左丘李治带: 鄙人略微谈谈吧,好久不上知道了.例如要使用windows单元,在program一行之后,(说明部分之前) 先写uses windows;然后才可以在执行部分中使用单元中的过程与函数等.(有哪些过程与函数就不讲了,请你自己上网查吧) 楼主可以买或者下载教程,例如《全国青少年信息奥林匹克联赛培训教程》中学的两本(别买错,是pascal的.) 楼主是使用turbo pascal?鄙人觉得free pascal更好,所以建议楼主也使用一下fp (fp可以兼容tp的大部分功能) 楼主有兴趣还可以学学delphi.

鄞州区13587747410: free pascal 怎么创建一个unit单元?详细点,有源文件样板最好,谢谢 -
左丘李治带: unit unit_name; interface {uses, const, type, var, procedure&function(pre decl.) ...} implementation {procedure&function implementation goes here. } begin {init. here} end.

鄞州区13587747410: pascal中uses -
左丘李治带: pascal语言的程序中,通过在程序的开头使用uses命令,说明所需要使用的单元,其语法为:uses,{单元名表是指用逗号隔开的1个或多个单元名称} 常见标准单元及功能:system:Pascal的运行库,包括常用的标准函数过程,可以在程序中直接...

鄞州区13587747410: PASCAL中的函数怎么调用? -
左丘李治带: program experiment2; var x:longint ; Function prime(a:longint):Boolean; Var i:longint; Begin prime:=true; for i:=2 to trunc(sqrt(a)) do if a mod i=0 then begin prime:=false;break;end; End; begin read(x); prime(x); readln; readln; end. 你这个函数本身就...

鄞州区13587747410: Pascal中新建单元后提示Can't run a unit是怎么回事? -
左丘李治带: Can't run a unit意思就是不能运行单元,光有单元没有主程序当然不能运行.

鄞州区13587747410: Pascal问题 - ---关于使用crt单元 -
左丘李治带: 方法有三个:1.将Units文件夹中的所有文件复制到程序所在文件夹/工作目录(我试过,确实有效)2.安装CRt补丁(听说的,没见过)3.使用Free Pascal(功能强大,好用) 可能没有CRT单元 看看下图中的代码,没问题 使用Free Pascal吧,没有我发给你

鄞州区13587747410: 如何自定义Free Pascal单元 -
左丘李治带: 单元的结构为:unit uses......interface{接口部分}......implementation{实现部分}......end.1、在接口部分定义largenum,在其他程序中就可以用uses使用了;2、单元需要编译,编译后的单元文件放在lib目录中,以后项目文件在哪个目录都不会出错.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网