free pascal 中有哪些函数

作者&投稿:郴叔 (若有异议请与网页底部的电邮联系)
求free pascal 中,所有的字符串函数~

求长度length
定义:function Length(S: String): Integer;
例子:
var
S: String;
begin
Readln (S);
Writeln(‘"‘, S, ‘"‘);
Writeln(‘length = ‘, Length(S));
end.


复制子串copy
定义: function Copy(S: String; Index: Integer; Count: Integer): String;

注意:S 是字符串类型的表达式。Index和Count是整型表达式。Copy 返回S中从Index开始,Count个字符长的一个子串。
例子:
var S: String;
begin
S := ‘ABCDEF‘;
S := Copy(S, 2, 3); { ‘BCD‘ }
end.


插入子串insert
定义:procedure Insert(Source: String; var S: String; Index: Integer);

注意:Source 是字符串类型的表达式。 S 是任意长度字符串类型变量。Index 是整型表达式。Insert 把 Source插在S中Index处。如果结果字符串的长度大于255,那么255之后的字符将被删除。

例子:
var
S: String;
begin
S := ‘Honest Lincoln‘;
Insert(‘Abe ‘, S, 8); { ‘Honest Abe Lincoln‘ }
end.


删除子串delete
定义:procedure Delete(var S: String; Index: Integer; Count:Integer);

注意:S 是字符串类型变量。 Index和Countare是整型表达式。Delete 删除S中从Index开始的Count个字符。如果Index大于S的长度,则不删除任何字符;如果Count大于S中从Index开始的实际字符数,则删除实际的字符数。

例子:
var
s: string;
begin
s := ‘Honest Abe Lincoln‘;
Delete(s,8,4);
Writeln(s); { ‘Honest Lincoln‘ }
Delete(s,9,10);
Writeln(s); { ‘Honest L‘ }
end.


字符串转为数值val
定义: procedure Val(S; var V; var Code: Integer);
在这里:
S 是由一系列数字字符构成的字符串类型变量;。
V 是整型或实型变量;
Code 是Integer型变量

注意:Val将S转为它的数值形式。
例子:
var s:string;I, Code: Integer;
begin
s:=‘1234‘;
val(s,i,code);
writeln(i); { 1234 }
end.


数值转为字符串str
定义: procedure Str(X [: Width [: Decimals ]]; var S:string);

注意:将数值X转成字符串形式。
例子:
var
S: string[11];
begin
Str(I, S);
IntToStr := S;
end;
begin
Writeln(IntToStr(-5322));
Readln;
end.


求子串起始位置pos
定义:function Pos(Substr: String; S: String): Byte;

注意:Substr和S字符串类型表达式。Pos在S中搜索Substr并返回一个integer值。这个值是Substr的第一个字符在S中的位置。如果在S中没有找到Substr,则Pos返回0。

例子:
var S: String;
begin
S := ‘ 123.5‘;
{ Convert spaces to zeroes }
while Pos(‘ ‘, S) > 0 do
S[Pos(‘ ‘, S)] := ‘0‘;
end.


字符完全串连+
定义:操作符+把两个字符串联在一起。
例子:
var s1,s2,s:string;
begin
s1:=‘Turbo ‘;
s2:=‘pascal‘;
s:=s1+s2; { ‘Turbo pascal‘ }
end.

字符串压缩空格串连-
定义:操作符-去掉第一个字符串最后的空格后,将两个字符串联在一起。
例子:
var s1,s2,s:string;
begin
s1:=‘Turbo ‘;
s2:=‘pascal‘;
s:=s1-s2; { ‘Turbopascal‘ }
end.

单目运算符 (最高优先级)
@ 取变量或函数的地址(返回一个指针)
not 逻辑取反或按位取反
乘除及按位运算符
* 相乘或集合交集
/ 浮点相除
div 整数相除
mod 取模 (整数相除的余数)
as 程序运行阶段类型转换 (RTTI运算符)
and 逻辑或按位求和
shl 按位左移
shr 按位右移
加减运算符
+ 相加、集合并集、字符串连接或指针增加一个偏移量
- 相减、集合差集或指针减少一个偏移量
or 逻辑或按位或运算
xor 逻辑或按位异或运算
关系及比较运算符(最低优先级)
= 判断是否相等
判断是否不相等
< 判断是否小于
> 判断是否大于
<= 判断是否小于或等于,或是否是一个集合的子集
>= 判断是否大于或等于,或是否是一个集合的父集
in 判断是否是集合成员
is 判断对象是否类型兼容 (又一个RTTI运算符)

1.算术函数
函数标识符 自变量类型 意义 结果类型
abs 整型、实型 绝对值 同自变量
arctan 整型、实型 反正切 实型
cos 整型、实型 余弦 实型
exp 整型、实型 指数 实型
frac 整型、实型 小数部分 实型
int 整型、实型 整数部分 实型
ln 整型、实型 自然对数 实型
pi 无自变量 圆周率 实型
sin 整型、实型 正弦 实型
sqr 整型、实型 平方 同自变量
sqrt 整型、实型 平方根 实型
例:abs(-4)=4 abs(-7.49)=7.49 arctan(0)=0.0
sin(pi)=0.0 cos(pi)=-1.0 frac(-3.71)=-0.71
int(-3.71)=-3.0 sqr(4)=16 sqrt(4)=2

2.标准函数
函数标识符 自变量类型 意义 结果类型
odd 整型 判断奇数 布尔型
pred 离散类型 求前趋 同自变量
succ 离散类型 求后继 同自变量
例:odd(1000)=false pred(2000)=1999 succ(2000)=2001
odd(3)=true pred('x')='w succ('x')='y'

3.转换函数
函数标识符 自变量类型 意义 结果类型
chr byte 自变量对应的字符 字符型
ord 离散类型 自变量对应的序号 longint
round 实型 四舍五入 longint
trunc 实型 截断取整 longint
例:chr(66)='B' ord('A')=65 round(-4.3)=-5 trunc(2.88)=2

4.杂类函数
函数标识符 自变量类型 意义 结果类型
random 无自变量 [0,1间的随机实数 real
random word [0,自变量间的随机整数) word
randomize 无自变量 初始化内部随机数产生器 longint
upcase 字符型 使小写英文字母变为大写 字符型
downcase 字符型 使小写英文字母变为大写 字符型

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 在当前目录或指定目录下查找第一个与给定属性相匹 配的文件名

常用的一些:
一、数学函数:

Inc(i) 使I:=I+1;
Inc(I,b) 使I:=I+b;
Abs(x) 求x的绝对值 例:abs(-3)=3
Chr(x) 求编号x对应的字符。例:Chr(65)=’A’ chr(97)=’a’ chr(48)=’0’
Ord(x) 求字符x对应的编号。例:ord(‘A’)=65 ord(‘a’)=97 另外:ord(false)=0 ord(true)=1
Sqr(x) 求x的平方。 例:sqr(4)=16
Sqrt(x)求x的开方. 例:sqrt(16)=4
round(x) 求x的四舍五入 例:round(4.5)=5
trunc(x) 求x的整数部分 例:trunc(5.6)=5 结果是integer型
int(x) 求x的整数部分 例int(5.6)=5.0 结果是real型
frac (x)求x的小数部分 例 frac(5.6)=0.6
pred(x) 求x的前导 pred(‘b’)=’a’ pred(5)=4 pred(true)=false
succ(x) 求x的后继 succ(‘b’)=’c’ succ(5)=6 succ(false)=true
odd(x) 判断x是否为奇数。如果是值为true,反之值为false. Odd(2)=false odd(5)=true
power(a,n) 求a的n次方 power(2,3)=8
random 取0~1之间的随机数(不能取到1)
randomize 随机数的种子函数,在每次设置随机数时都要把这个函数放在最前面.
Fillchar(a,size(a),0) 数组初始化,即把数组a的值全部置为0
SHR: x SHR n 把x换成二进制后向右移n位,相当于 把x 除以 2n
SHL: x SHL n把x换成二进制后向左移n位,相当于 把x 乘以 2n

二、字符串函数
1. 连接运算 concat(s1,s2,s3…sn) 相当于s1+s2+s3+…+sn.
例:concat(‘11’,’aa’)=’11aa’;
2. 求子串。 Copy(s,I,L) 从字符串s中截取第I个字符开始后的长度为l的子串。
例:copy(‘abdag’,2,3)=’bda’
3. 删除子串。过程 Delete(s,I,l) 从字符串s中删除第I个字符开始后的长度为l的子串。
例:s:=’abcde’;delete(s,2,3);结果s:=’ae’
4. 插入子串。 过程Insert(s1,s2,I) 把s1插入到s2的第I个位置
例:s:=abc;insert(‘12’,s,2);结果s:=’a12bc’
5. 求字符串长度 length(s) 例:length(‘12abc’)=5
6. 搜索子串的位置 pos(s1,s2) 如果s1是s2的子串 ,则返回s1的第一个字符在s2中的位置,若不是子串,则返回0.
例:pos(‘ab’,’12abcd’)=3
7. 字符的大写转换。Upcase(ch) 求字符ch的大写体。
例:upcase(‘a’)=’A’
8. 数值转换为数串。 过程 Str(x,s) 把数值x化为数串s.
例:str(12345,s); 结果s=’12345’
9. 数串转换为数值。 过程val(s,x,I) 把数串s转化为数值x,如果成功则i=0,不成功则I为无效字符的序数
例:val(‘1234’,x,I);结果 x:=1234


石渠县15621585889: free pascal 中有哪些函数 -
佟些胃乐: 1.算术函数 函数标识符 自变量类型 意义 结果类型 abs 整型、实型 绝对值 同自变量 arctan 整型、实型 反正切 实型 cos 整型、实型 余弦 实型 exp 整型、实型 指数 实型 frac 整型、实型 小数部分 实型 int 整型、实型 整数部分 实型 ln 整型、实型 ...

石渠县15621585889: free pascal有哪些函数
佟些胃乐: inc(i) 使i:=i+1; inc(i,b) 使i:=i+b; dec(i) 使i:=i-1; dec(i,b) 使i:=i-b; abs(x) 求x的绝对值 例:abs(-3)=3 chr(x) 求编号x对应的字符.例:chr(65)='A' chr(97)='a' chr(48)='0' ord(x) 求字符x对应的编号.例:ord('A')=65 ord('a')=97 另外:ord(false)...

石渠县15621585889: free pascal 中的各种函数及其意义
佟些胃乐: (1)自变量必须为整型的标准函数: (A)前趋函数:Pred(x),函数结果类型为整型,如:Pred(4)=3 (B)后继函数:Succ(x),函数结果类型为整型,如:Succ(4)=5 (C)奇函数:odd(x),结果为布尔型.如:Odd(13)=True (D)字符函数:Chr(x)其...

石渠县15621585889: 球所有free Pascal关键字,函数,保留字 -
佟些胃乐: Pascal用到的数和符号 1、PASCAL语言的字符表 是ASCII字符集,主要有:⑴26个英文字母(不分大小写)⑵十个数字符号⑶特殊符号.如+-*/=>=; 例:const pi:=3.14; 2).变量 变量是指在程序执行过程中,其值可以改变的量.变量三要...

石渠县15621585889: free pascal关于文件的函数 -
佟些胃乐: 同一文件夹中所有文件的文件名是不可能相同的.如果LZ是说处理所有文件的文件名是有规律的,那可以参照第二个程序.var f:text; begin assign(f,'1.txt');rename(f,'2.pas'); close(f); end.以上可以把“1.txt”这个文件改成“2.pas”,同一目录处...

石渠县15621585889: 求free pascal 中,所有的字符串函数 -
佟些胃乐: 求长度length 定义:function Length(S: String): Integer; 例子: var S: String; begin Readln (S); Writeln('"', S, '"'); Writeln('length = ', Length(S)); end.复制子串copy 定义: function Copy(S: String; Index: Integer; Count: Integer): String...

石渠县15621585889: FREEPASCAL有哪些标准单元库,有哪些标准函数、过程? -
佟些胃乐:[答案] 一、数学函数: Inc(i)使I:=I+1; Inc(I,b)使I:=I+b; Abs(x)求x的绝对值例:abs(-3)=3 Chr(x)求编号x对应的字符.例:Chr(65)='A'chr(97)='a'chr(48)='0' Ord(x)求字符x对应的编号.例:ord('A')=65ord('a')=97另外:ord(false)=0ord(true)=1 ...

石渠县15621585889: Free Pascal 里面自带的 math 单元里面有什么函数与过程可以调用?有什么用? -
佟些胃乐: math单元 power(a,b);//乘方a的b次 intpower(a,b);//乘方a的b次...........要的话加Q798273600

石渠县15621585889: FreePascal 绘图函数
佟些胃乐: 看看参考资料连接主要看crt 和 graph单元的函数就可以.

石渠县15621585889: 请教freepascal与turbopascal的详细区别在命令?
佟些胃乐: 我好久没用了记得不是很全.turbopascal里面有的一些函数freepascal好像是没有的,free有点像turbo的简化版.free目前应该是竞赛用得比较多,因为它调试功能比较强大,而且有特殊的亮条可以帮助写程序的人更容易调整程序语句间的结构.不过大体上还都是一至的啦,如果你要参加竞赛最好还是提前用下free,因为它用的感觉和turbo还是很不同的.尤其注意调好字体和函数之类东西显示的颜色

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