Pascal相關(guān)函數(shù)

1、數(shù)學(xué)函數(shù)

絕對值函數(shù)abs(x)
截尾函數(shù)trunc(x)
四舍五入函數(shù)round(x)
取小數(shù)函數(shù)frac(x)
求平方根函數(shù)sqrt(x)和平方函數(shù)sqr(x)

2、所有單元SYSTEM TP的運(yùn)行庫,包括常用的標(biāo)準(zhǔn)函數(shù)和過程,可以在程序中直接使用,不需USES語句說明。

DOS 具有日期、時(shí)間、目錄查找、程序執(zhí)行等功能
CRT 具有屏幕模式控制、擴(kuò)展鍵盤碼、顏色、窗口、聲音等功能
PRINTER 支持打印輸出操作。
GRAPH 高級圖形軟件包,支持多種圖形適配器。
GRAPH3 實(shí)現(xiàn)TP3.0的圖形軟件包。
TURBO3 兼容TP3.0的源程序。
OVERLAY 實(shí)現(xiàn)高級覆蓋管理

3、SYSTEM單元常用過程與函數(shù)

ABS(X) F 求變量的絕對值
ADDR(X) F 測變量地址
APPEND(F) P 打開一個(gè)存在的文本文件,并將文件指針指向文件末尾準(zhǔn)備添加元素
ARCTAN(X) F 反正切
ASSIGN(F,C) P 將字符串C所表示的外部文件名賦給文件變量F
ASSIGNED(X) P 測試程序當(dāng)中的指針或變量是否為空
BLOCKREAD(F,D,NUM) P 讀類型文件。
BLOCKWRITE(F,D,NUM) P 寫無類型文件
BREAK P 中止或結(jié)束循環(huán)
CHDIR(PATH) P 改變當(dāng)前目錄
CHR(X) F 求ASCII碼值為X的字符
CLOSE(F) P 關(guān)閉文件
CONCAT(S1,S2...S3) F 字符串合并
CONTINUE P 繼續(xù)循環(huán)
COPY(S,POS,LEN) F 返回一個(gè)字符串的子串
COS(X) F 余弦函數(shù)
CSEG F 返回CS寄存器的當(dāng)前值
DEC(X) F X:=X-1
DELETE(S,POS,LEN) P 刪除一個(gè)字符串的子串
DISPOSE(P) P 釋放一個(gè)動(dòng)態(tài)變量
DSEG F 返回DS寄存器的當(dāng)前值
EOF(F) F 判斷文件是否結(jié)束
EOLN(F) F 判斷文件類型中的一行是否結(jié)束
ERASE(F) P 刪除一個(gè)存在的外部文件。
EXIT P 過程中止
EXP(X) F 以E為底的指數(shù)函數(shù)
FILEPOS(F) F 文件記錄的當(dāng)前位置
FILESIZE(F) F 文件記錄數(shù)
FILLCHAR(D,LEN,DATE) P 填充數(shù)值或字符
FLUSH(F) P 清空文件緩存區(qū)
FRAC(X) F 取實(shí)形變量的小數(shù)部分
FREEMEM(P,I) P 釋放變長動(dòng)態(tài)變量
GETDIR(DRV,PATH) P 取當(dāng)前盤,當(dāng)前目錄
GETMEM(P,I) P 分配變長的動(dòng)態(tài)變量,并把塊地址存放在一個(gè)指針變量中
HALT P 立即中止程序執(zhí)行,返回TP編輯器或DOS
HI(I) F 返回一個(gè)變量的高位字節(jié)
INSERT(S,D,POS) F 在一個(gè)字符串中某一位置開始插入一個(gè)子串
INT F 取整數(shù)部分
IORESULT F 返回最后一次輸入/出操作的結(jié)果狀態(tài)
LENGTH(S) F 取字符串的長度
LN(R) F 求自然對數(shù)
LO(I) F 返回一個(gè)變量的低位字節(jié)
MAXAVAIL F 返回最大內(nèi)存空間
MEMAVAIL F 返回可用內(nèi)存數(shù)目
MKDIR(PATH) P 建立一個(gè)子目錄
MOVE(S,D,LEN) P 快傳送
NEW(P) P 建立一個(gè)新的動(dòng)態(tài)變量
ODD(X) F 判斷一個(gè)變量的值是否為奇數(shù)
OFS(X) F 側(cè)變量偏移地址
ORD(CH) F 求一個(gè)字符的ASCII碼值
PARAMCOUNT F DOS參數(shù)串長度
PARAMSTR(N) F DOS參數(shù)串
PI F 圓周率的值
pos(str1,str2) f 測一個(gè)字符串中包含的另一個(gè)子串的開始位置
pred(x) f 求前驅(qū)
ptr(i) f 指針賦值
random f 返回0~1之間的隨機(jī)實(shí)數(shù)
randomize p 初始化隨機(jī)數(shù)發(fā)生器
read/readln(f,x) p 讀入/輸入數(shù)據(jù)
rename(f,str) p 給一個(gè)外部文件改名
reset(f) p 打開文件,并將文件指針指向開始,并準(zhǔn)備讀數(shù)據(jù)
rewrite(f) p 打開文件,并將文件指針指向開始,準(zhǔn)備寫資料
rmdir(path) p 刪除一個(gè)子目錄
round(x) f 求實(shí)數(shù)的近似數(shù)
runerror p 停止程序的運(yùn)行
scrollto p 滾動(dòng)顯示窗口的某部分內(nèi)容
seek(f,n) p 將文件指針定位于文件f的第n個(gè)文件成分上
seekrof(f) f 定位到文件尾
seekroln(f) f 定位到行尾
seg(n) f 測變量段地址
settextbuf(f) p 將輸入/出緩沖區(qū)與一個(gè)文本文件建立關(guān)聯(lián)
sin(x) f 正弦函數(shù)
sizeof(x) f 測變量大小
sptr f 返回sp寄存器的當(dāng)前值
sqr(x) f 平方
sqrt(x) f 平方根
sseg f 返回ss寄存器的當(dāng)前值
str(i,s) f 將一個(gè)整數(shù)轉(zhuǎn)換成字符串
succ(X) f 后繼函數(shù)
swap(x) f 交換一個(gè)變量的高位和低位字節(jié)
trunc(x) f 截去實(shí)數(shù)的小數(shù)部分
truncate(f) p 截去文件當(dāng)前指針以后的內(nèi)容
upcase(ch) f 將小寫字母轉(zhuǎn)換成大寫字母
val(s,r,p) p 將一個(gè)字符串轉(zhuǎn)換成數(shù)值
writeln(f,x) p 輸出

4、 Dos單元常用過程與函數(shù)

getdate p 返回系統(tǒng)當(dāng)前日期
detftime p 返回最后一次寫入的日期和時(shí)間
gettime p 返回系統(tǒng)當(dāng)前時(shí)間
packtime p 轉(zhuǎn)換系統(tǒng)日期和時(shí)間,封裝成4個(gè)字節(jié)的長整形格式
setdate p 設(shè)置系統(tǒng)當(dāng)前日期
setftime p 寫入新的系統(tǒng)日期和時(shí)間,覆蓋系統(tǒng)最后一次寫入的系統(tǒng)日期和時(shí)間文件
settime p 設(shè)置系統(tǒng)當(dāng)前時(shí)間
uppacktime p 將系統(tǒng)日期和時(shí)間轉(zhuǎn)換成紀(jì)錄格式
diskfree f 返回指定磁盤可用剩余空間
disksize f 返回指定磁盤的總?cè)萘?br> get/setverity p 返回/設(shè)置dos狀態(tài)下的磁盤讀寫標(biāo)記
fexpand f 返回函數(shù)名的全稱
fsearch f 在一個(gè)目錄中查找文件
fsplit f 將一個(gè)文件名分成目錄、文件名、擴(kuò)展名
findfirst p 在當(dāng)前目錄或指定目錄下查找第一個(gè)與給定屬性相匹配的文件名
findnext p 返回下一個(gè)滿足匹配條件的文件名
getfattr p 返回文件的屬性
setfattr p 設(shè)置文件屬性
gerintvec p 返回某個(gè)中斷變量值
intr p 執(zhí)行軟中斷
msdos p 執(zhí)行dos 系統(tǒng)調(diào)用
setintvec p 設(shè)定中斷值
exec p 通過一個(gè)特定命令行執(zhí)行特定程序段
keep p 中斷程序的執(zhí)行但仍駐留在內(nèi)存中
swapvectors p 用當(dāng)前變量交換所有中斷變量值
dosexitcode f 回到子程序出口
dosversion f 顯示dos版本

5、CRT單元

assigncrt(f) p 將文本文件f與顯示器crt建立聯(lián)系
clreol p 清除當(dāng)前行光標(biāo)所在位置以后的字符
clrscr p 清除當(dāng)前窗口或屏幕,光標(biāo)返回到左上角
delay(t) p 等待t毫秒
delline p 清除光標(biāo)所在行上所有內(nèi)容
gotoxy(x,y) p 將光標(biāo)移到屏幕某處
highvideo p 選擇高亮度顯示字符
insline p 在當(dāng)前光標(biāo)位置插入空行
keypressed f 測定鍵盤輸入狀態(tài)
lowvideo p 低亮度顯示字符
normvideo p 選擇正常文本屬性從光標(biāo)所在位置開始顯示字符
nosound p 關(guān)閉內(nèi)部揚(yáng)聲器
readkey p 等待從鍵盤輸入一個(gè)字符
sound(hz) p 以hz指定的頻率發(fā)聲
textbackground(soor) p 設(shè)置正文背景顏色
textcolor(color) p 設(shè)置正文前景顏色
textmode p 選擇特定的文本顯示模式
wherex/y f 返回當(dāng)前光標(biāo)位置的坐標(biāo)值
window(x1,y1,x2,y2) p 在屏幕定義一個(gè)文本窗口

6、其他單元

chain(f) p 目標(biāo)程序鏈接
execute(f) p 執(zhí)行目標(biāo)程序
mark(p) p 標(biāo)記動(dòng)態(tài)變量
release(p) p 釋放動(dòng)態(tài)變量區(qū)
srtinit p 屏幕初始化
crtline p 漢字屏幕方式轉(zhuǎn)換
graphbackground(color) p 選擇背景色
graphcolormode p 中分辨率彩色圖形方式,320200彩色
graphmode p 中分辨率黑白圖形方式,320
200黑白
graphwindow(x1,y1,x2,y2,color)p 定義圖形方式窗口
hires p 高分辨率單色圖形方式,640200黑白
hirescolor(color) p 高分辨率彩色圖形方式,640
200彩色
palette(color) p 中分辨率彩色圖形顏色組
ovrpath(path) p 指定覆蓋文件路徑
draw(x1,y1,x2,y2,color) p 畫線
intr(n,m) p 8086中斷調(diào)用
plot(x,y,color) p 畫點(diǎn)
random(integer) f 產(chǎn)生隨機(jī)整數(shù)
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 屏幕轉(zhuǎn)儲(chǔ)到屏幕
putpic(buffer,x,y) p 緩沖器轉(zhuǎn)儲(chǔ)到屏幕
getdotcolor(x,y) p 讀點(diǎn)
fillscreen(color) p 填充屏幕
fillshape(x,y,fillcol,bordercol) p 填充一個(gè)區(qū)域

7、其他常用函數(shù)

function binstr(value:longint;cnt:byte):string;
將value轉(zhuǎn)二進(jìn)制,取后cnt個(gè)字符所成字串

function lowercase(c:char or string):char or string;
upcase 的反函數(shù)

procedure setlength(var s:string;len:longint);
將s長度定為len

function power(base,expon:real):real;
base的expon次方

strlcopy 函數(shù) 將一個(gè)字符串中的字符復(fù)制到另一個(gè)字符串中
strlen 函數(shù) 返回字符串中的字符數(shù)
strlfmt 函數(shù) 格式化一系列的參數(shù),其結(jié)果中包含有指向目標(biāo)緩沖區(qū)的指針
strlicomp 函數(shù) 以最大長度比較兩個(gè)字符串(不區(qū)分大小寫)
strlower 函數(shù) 將字符串中的字符轉(zhuǎn)換為小寫
strmove 函數(shù) 將一個(gè)字符串中的字符復(fù)制到另一個(gè)字符串中
strnew 函數(shù) 在堆棧上分配一個(gè)字符串
strpas 函數(shù) 將以null結(jié)束的字符串轉(zhuǎn)換為pascal類的字符串
strpcopy 函數(shù) 將pascal類的字符串復(fù)制為以null結(jié)束的字符串
strplcopy 函數(shù) 從pascal類的最大長度字符串復(fù)制為以null結(jié)束的字符串
strpos 函數(shù) 返回一個(gè)字符串在另一個(gè)字符串中首次出現(xiàn)指針
strrscan 函數(shù) 返回字符串中最后出現(xiàn)字符的指針
strscan 函數(shù) 返回字符串中出現(xiàn)首字符的指針
strtodate 函數(shù) 將字符串轉(zhuǎn)換為日期格式
strtodatetime 函數(shù) 將字符串轉(zhuǎn)換為日期/時(shí)間格式
strtofloat 函數(shù) 將給定的字符串轉(zhuǎn)換為浮點(diǎn)數(shù)
strtoint 函數(shù) 將字符串轉(zhuǎn)換為整型
strtointdef 函數(shù) 將字符串轉(zhuǎn)換為整型或默認(rèn)值
strtotime 函數(shù) 將字符串轉(zhuǎn)換為時(shí)間格式
strupper 函數(shù) 將字符串中的字符轉(zhuǎn)換為大寫
style 屬性 類型選擇
suce 函數(shù) 返回后繼的參數(shù)
swap 函數(shù) 交換參數(shù)的高低地址位
tabs 屬性 標(biāo)記每一項(xiàng)的內(nèi)容
tabindex 屬性 標(biāo)記索引
text 屬性 顯示的文本
texttofloat 函數(shù) 將字符串(以null結(jié)束的格式)轉(zhuǎn)換為浮點(diǎn)數(shù)
time 函數(shù) 返回當(dāng)前的時(shí)間
timetostr 函數(shù) 將時(shí)間格式轉(zhuǎn)換為字符串
trim 函數(shù) 從給定的字符串中刪除前導(dǎo)和尾部的空格及控制字符
trimleft 函數(shù) 從給定的字符串中刪除首部的空格及控制字符
trimright 函數(shù) 從給定的字符串中刪除尾部的空格及控制字符
trunc 函數(shù) 將實(shí)型值截取為整型值
truncate 函數(shù) 截去當(dāng)前文件位置后的內(nèi)容
unselectedcolor 屬性 未選中顏色
upcase 將字符轉(zhuǎn)換為大寫
uppercase 將給定的字符串變?yōu)榇髮?br> val 函數(shù) 將字符串轉(zhuǎn)換為整型值
vararraycreate 函數(shù) 以給定的界限和維數(shù)建立變體數(shù)組
vararraydimcount 函數(shù) 返回給定變體的維數(shù)
vararrayhighbound 函數(shù) 返回給定變體數(shù)組維數(shù)的上界
vararraylock 函數(shù) 鎖定給定的變體數(shù)組
vararraylowbound 函數(shù) 返回給定變體數(shù)組維數(shù)的下界
vararrayof 函數(shù) 返回指定變體的數(shù)組元素
vararrayredim 函數(shù) 通過改變上限來調(diào)整變體的大小
vararrayunlock 函數(shù) 解鎖指定的變體數(shù)組
varastype 函數(shù) 將變體轉(zhuǎn)換為指定的類型
varcase 函數(shù) 將變體轉(zhuǎn)換為指定的類型并保存他
varclear 函數(shù) 清除指定的變體
varcopy 函數(shù) 將指定的變體復(fù)制為指定的變體
varformdatetime 函數(shù) 返回包含日期時(shí)間的變體
varisarray 函數(shù) 測試變體是否為數(shù)組
varisempty 函數(shù) 測試變體是否為unassigned varisnull 函數(shù) 測試變體是否為null
vartodatetime 函數(shù) 將給定的變體轉(zhuǎn)換為日期時(shí)間
vartype 函數(shù) 將變體轉(zhuǎn)換為指定的類型并保存他
visible 屬性 控件的可見性

wantreturns 屬性 為true時(shí),按回車鍵產(chǎn)生一個(gè)回車符;為false時(shí),按下ctrl+enter才產(chǎn)生回車符 write 命令 對有格式的文件,寫一變量到文件組件中;對文本文件,寫一個(gè)或多個(gè)值到文件

8、其他不常用函數(shù)

Addr
語法 function Addr(var f:text);
說明 addr返回一個(gè)變量,類型或過程的地址。結(jié)果為指針類型

assigncer
語法 procedure assigncrt(var f:file;name:string);
說明 將文件f的內(nèi)容輸于顯示器上

bolckread
語法 procedure blockread(var f:file; var b:type; numrecs:integer;varecsread:integer);
說明 從無類型文件f中讀出number 個(gè)記錄,放在緩沖區(qū)b .recsread表示了實(shí)際讀出的記
錄數(shù)。注意:只有pc\ms-dos版才支持recsread

bolckwrite
語法 procedure blockwrite(var f:file; var b:type; numrecs:integer);
說明 從緩沖區(qū)b讀出numrecs個(gè)記錄至無類型文件中。

chdir
表示的目錄.語法 procedure chdir (s:string);
說明 將當(dāng)前的目錄換為s所

filesize
語法 function(f:file):integer;
說明 返回f當(dāng)前所含的記錄數(shù)。

filepos
語法 function(f:file):integer;
說明 返回文件f指針?biāo)赶虻挠涗浱?/p>

fillpoly(dos)
語法 frocedure fillpoly(munpoints:word;var polypoints);
說明 用munpoints個(gè)點(diǎn)畫一個(gè)多邊形,數(shù)組munpoints含多邊形的頂點(diǎn)坐標(biāo)

flush
說明 procedure flush(var f:file)
語法 刷新用于輸出文件f的全部磁盤緩沖區(qū)

frac
語法 function frac(r:real):real;
說明 返回實(shí)數(shù)r的小數(shù)部分

fsearch (dos)
語法 function fsearch(path:pathstr;dirlist:string):pathstr
說明 查找dirlist目錄中的與path相匹配的文件。如果找到則以一個(gè)字符串返回結(jié)果,否則返回的函數(shù) 值為一空串

insline
語法 procedure insline;
說明 在當(dāng)前光標(biāo)的所在位置插入一空行

mark
語法 procedure mark(p:pionter)
說明 貯存了當(dāng)前堆頂端知底于指針p中

maxavaih
語法 function maxavil:longint
說明 返回堆中最大的自由塊的尺寸

menavail
語法 function memavail:longint
說明 返回堆中自由空間的總長度

mkdir
語法 procedure mkdir(s:string)
說明 以字符串s命名建立一個(gè)目錄(文件夾)

parammstr
語法 function paramstr(i;word:string);
說明 返回命令行所指定的參數(shù)。例如 paramstr(1)返回第一個(gè)參數(shù)。在dos3.0以上的版本 返回執(zhí)行文 件的路徑和文件名

randomize
語法 function randomize;
說明 初始化隨機(jī)產(chǎn)生程序。其基數(shù)存放在長整型randseed中

release
語法 procedure falease(var p;pointer)
說明 釋放由mark命令所設(shè)置的內(nèi)存。用mark于貯存指針的堆地址

rename
語法 procedure rename(var f:file;s:string)
說明 將文件f的文件名變?yōu)樽址畇

rmdir
語法 procedure rmdir(s:string)
說明 刪除目錄s(文件夾)

sound (crt單元)
sound(i:integer)
利用內(nèi)部揚(yáng)聲器發(fā)音

seekeof
語法 function seekeof(var file):boolean
說明 與eof相似,只是在測試文件結(jié)束前要跳過空格,制表符號和文件的結(jié)束符(cr/cf)

truncate
語法 procedure trunvate
說明 在當(dāng)前文件f指針處強(qiáng)行結(jié)束文件,文件指針后的內(nèi)容丟失

9、退出方法

break 是用來退出其所在的循環(huán)語句
continue / break 語句, 它們并不能影響上面幾層的
循環(huán)語句。
exit 是退出當(dāng)前程序塊;
halt : 沒什么好說的,退出整個(gè)程序,Game Over.

10、關(guān)于fillchar的使用和討論

var a:array [1..10] of arrtype;
執(zhí)行fillchar(a,sizeof(a),0);
當(dāng)arrtype為
1.real(其他差不多) 使得a中的元素全部成為0.0
2.integer(byte,word,longint,shortint都相同) 全部為0
3.boolean 全部為false
4.char 全部為#0執(zhí)行fillchar(a,size(a),1);
寫幾個(gè)特殊的
1.integer 全部為157(不知道為什么)
2.real 很大的一個(gè)數(shù),同上。
3.boolean 全部為true
4.byte,shortint 全部為1,所以integer不行可以暫時(shí)用這兩個(gè)嘛,要不然就減去156

注:忘了是在哪個(gè)博客里面收集的,只記得下面這個(gè)

參考:https://blog.csdn.net/mkmmkd/article/details/51866035

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 第2章 基本語法 2.1 概述 基本句法和變量 語句 JavaScript程序的執(zhí)行單位為行(line),也就是一...
    悟名先生閱讀 4,565評論 0 13
  • 官網(wǎng) 中文版本 好的網(wǎng)站 Content-type: text/htmlBASH Section: User ...
    不排版閱讀 4,715評論 0 5
  • 第一次通過這種方式 利用碎片時(shí)間學(xué)習(xí)…… 第一次交作業(yè)~ 臺(tái)燈下拍得有點(diǎn)黑哈…^_^
    榆樹下雜貨鋪閱讀 252評論 2 0
  • 去年的我漫步于此,感受這最美好的時(shí)光,一年后的今天,我終于明白了我與你的疏離與邊緣。 我就是月亮上的那朵云,是你們...
    看見另一個(gè)自己閱讀 184評論 0 1
  • 現(xiàn)在全國所有城市都可以辦理,只要你符合簽證條件。 日本駐華大使館 管轄地區(qū):除以下各領(lǐng)事館管轄區(qū)域以外的所有省市,...
    箱貓日和閱讀 943評論 0 0

友情鏈接更多精彩內(nèi)容