取整函数int(x)
定义:function Int(X: Real): Real; 注意:X是实型数,返回值也是实型的;返回的是X的整数部分,也就是说,X被截尾了(而不是四舍五入)例子: var R: Real; begin
R := Int(123.567); { 123.0 } R := Int(-123.456); { -123.0 } end.
截尾函数trunc(x)
定义:function Trunc(X: Real): Longint; 注意:X是实型表达式. Trunc 返回Longint型的X的整数部分例子: begin
Writeln(1.4, ' becomes ', Trunc(1.4)); { 1 } Writeln(1.5, ' becomes ', Trunc(1.5)); { 1 } Writeln(-1.4, 'becomes ', Trunc(-1.4)); { -1 } Writeln(-1.5, 'becomes ', Trunc(-1.5)); { -1 } end.
四舍五入函数round(x)
定义:function Round(X: Real): Longint; 注意:X是实型表达式. Round 返回Longint型的X的四舍五入值.如果返回值超出了Longint的表示范围,则出错. 例子: begin
Writeln(1.4, ' rounds to ', Round(1.4)); { 1 } Writeln(1.5, ' rounds to ', Round(1.5)); { 2 } Writeln(-1.4, 'rounds to ', Round(-1.4));{ -1 } Writeln(-1.5, 'rounds to ', Round(-1.5));{ -2 } end.
取小数函数frac(x)
定义:function Frac(X: Real): Real; 注意:X 是实型表达式. 结果返回 X 的小数部分; 也就是说,Frac(X) = X - Int(_X). 例子: var
R: Real; begin
R := Frac(123.456); { 0.456 } R := Frac(-123.456); { -0.456 } end.
求平方根函数sqrt(x)和平方函数sqr(x) 定义:
平方根:function Sqrt(X: Real): Real;
注意:X 是实型表达式. 返回实型的X的平方根. 平方:function Sqr(X): (Same type as parameter);
注意:X 是实型或整型表达式.返回值的类型和X的类型一致,大小是X的平方,即X*X. 例子: begin
Writeln('5 squared is ', Sqr(5)); { 25 }
Writeln('The square root of 2 is ',Sqrt(2.0)); { 1.414 }
标准数据类型的含义及符号
(1)整型数的取值范围:-32768<=n<=32768;整型运算操作:+、-、*、div、mod;整型关系操作:=、<>、>=、<=,结果为布尔型;有关整型的标准函数:
整型函数
函数名 函数值 例
前接函数 pred(x) x-1 pred(4)=3 后继函数 succ(x) x+1 succ(-3)=-2 绝对值函数abs(x) |x| abs(-1)=1 平方函数sqr(x) x^2 sqr(-5)=25 奇函数 odd(x) x为奇数时值为True odd(1)=true
x为偶数时值为False odd(16)=false
字符函数chr(x) 序号为x的ASCII字符 chr(65)=\\'\\'a\\'\\' a对应的序号65
(2)实型数的绝对值取值范围:1E-38~1E+38;计算机实数的表示标准形式往往类如
1.2E-8,-1234.56E+3等形式;实数范围比整数大,但实型数的运算速度比整形数慢,另外实型数在存储时会出现小的误差;
实型的运算操作:+、-、*、/。只要有一个运算对象是实型量,其运算结果总是实型量,即其可与整型量混合计算。
实型的关系操作;=、<>、>=、<=,结果为布尔型,即两种结果:true或false。
实型函数种类: abs(x); sqr(x);
sin(x)正弦函数,求数学三角正弦函数的值,如sin(1.570789)=0.99999,注意X值要以弧度作单位;
cos(x)余弦函数;
arctan(x)反正切函数; ln(x)自然对数;
exp(x)指数函数;求ex的值。
Sqrt(x)平方根函数;如sqrt(1.44)=1.2
trunc(x)截尾函数;截去实数x的小数部分,保留整数,例:trunc(-3.3)=-3; round(x)舍入函数;将实数x四舍五入得到最接近的整数,例;round(3.3)=3,round(-8.9)=-9;
注意:实型数据没有pred和succ函数。
(3)布尔型数据的值只有两个:false和true,前者序号为0,后者序号为1。布尔类型数据最少,但用途广泛,主要用于程序设计中的流程控制和逻辑判断。
布尔型数据可作如下运算操作:
not(逻辑非),and(逻辑与),or(逻辑与)。
布尔型的标准函数:
ORD(X) 序号函数,例:ORD(FALSE)=0,ORD(TRUE)=1;
RRED(X) 前趋函数,例:PRED(TRUE)=FALSE,但X的值为TRUE时,只有前接值,没有后趋值;
SUCC(X)后继函数,例:SUCC(FALSE)=TRUE,但X的值为FALSE时,只有后继值,没有前趋值;
EOF(X)和EOLN(X)文件结束函数,行结束函数,此处不予以讨论。
(4)字符型数据取值范围:ASCⅡ码表中的一部分,包含几十个大小写英文字母与数字及数字、各种符号(含空格),注意每个字符符号均有相应的序号,而序号可视为整型数,所以字符型与整型是可以转换的。
在PASCAL程序中,用单引号括起来的一个字符表视字符型数据,如\\'\\'A\\'\\',\\'\\'8\\'\\',\\'\\'+\\'\\',\\'\\' \\'\\',分别表示字母A,数字8,字符+和空格。注意整型或实型的8与字符型的8是有本质的区别的。
字符型数据不可直接进行运算操作+、-、*、/;
字符型数据可做如下关系操作:>,<,=,<>,<=,>=,运算结果是布尔类型的值,即TRUE或FALSE。
字符性的标准函数: ORD(x) 求X的序号,例如:ORD(\\'\\'C\\'\\')=67;ORD(\\'\\'0\\'\\')=48;ORD(\\'\\'A\\'\\')=65;
ORD(\\'\\'A\\'\\')=97;
PRED(X) 求X的前接值,例如:PRED(\\'\\'6\\'\\')=\\'\\'5\\'\\'; SUCC(X) 求X的后续值,例如:SUCC(\\'\\'6\\'\\')=\\'\\'7\\'\\'
CHR(X) 求序号为X的相应自负,是ORD的逆函数,例如:CHR(67)=\\'\\'C\\'\\'; CHR(ORD(\\'\\'X\\'\\')-1);
例如如下关系也成立;
ORD(\\'\\'9\\'\\')-ORD(\\'\\'1\\'\\')=57-49=8;
SUCC(X)=CHR(ORD(X)+1);如SUCC(\\'\\'B\\'\\')=CHR(ORD(\\'\\'B\\'\\')+1)=CHR(66+1)-C\\'\\'; PRED(X)=CHR(ORD(X)-1);如
PRED( \\'\\'B\\'\\')=CHR(ORD(\\'\\'B\\'\\')-1)=CHR(66-1)=\\'\\'A\\'\\'。
delphi函数大全之ABC篇-详解 (2007-04-09 00:25:46)
标签:delphi 函数
━━━━━━━━━━━━━━━━━━━━━
首部 function CompareStr(const S1, S2: string): Integer; $[SysUtils.pas 功能 返回比较两个字符
说明 当S1>S2返回值>0;当S1
例子 SpinEdit1.Value := CompareStr(Edit1.Text, Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━ 首
部 function CompareMem(P1, P2: Pointer; Length: Integer): Boolean; assembler; $[SysUtils.pas
功能 返回比较两个内存指针 说
明 CompareMem(PChar('12a'), PChar('12c'), 2)=True;CompareMem(PChar('12a'), PChar('12c'), 3)=False 参考
例子 CheckBox1.Checked := CompareMem(Self, Form1, 8); ━━━━━━━━━━━━━━━━━━━━━
首部 function CompareText(const S1, S2: string): Integer; $[SysUtils.pas 功能 返回比较两个字符串 说明 不区分大小写 参考
例子 SpinEdit1.Value := CompareText(Edit1.Text, Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiUpperCase(const S: string): string; $[SysUtils.pas 功能 返回字符串S的大写形式
说明 ANSI(American National Standards Institute)美国国家标准协会;非小写的字符不变
参考 function Windows.CharUpperBuff
例子 Edit2.Text := AnsiUpperCase(Edit1.Text); ━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiLowerCase(const S: string): string; $[SysUtils.pas 功能 返回字符串S的小写形式 说明 非大写字符不处理
参考 function Windows.CharLowerBuff
例子 Edit2.Text := AnsiLowerCase(Edit1.Text); ━━━━━━━━━━━━━━━━━━━━━
首部 function AnsiCompareStr(const S1, S2: string): Integer; $[SysUtils.pas 功能 反回比较两个字符串
说明 当S1>S2返回值>0;当S1 参考 function Windows.CompareString 例子 SpinEdit1.Value := AnsiCompareStr(Edit1.Text, Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function AnsiSameStr(const S1, S2: string): Boolean; $[SysUtils.pas 功能 返回两个字符串是否相等 说明 区分大小写 参考 function SysUtils.AnsiCompareStr 例子 CheckBox1.Checked := AnsiSameStr(Edit1.Text, Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function AnsiCompareText(const S1, S2: string): Integer; $[SysUtils.pas 功能 反回比较两个字符串 说明 当S1>S2返回值>0;当S1 例子 SpinEdit1.Value := AnsiCompareText(Edit1.Text, Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function AnsiSameText(const S1, S2: string): Boolean; $[SysUtils.pas 功能 返回两个字符串是否相等 说明 不区分大小写 参考 function SysUtils.AnsiCompareText 例子 CheckBox1.Checked := AnsiSameText(Edit1.Text, Edit2.Text); ━━━━━━━━━━━━━━━━━━━━━ 首部 function AnsiStrComp(S1, S2: PChar): Integer; $[SysUtils.pas 功能 返回比较两个指针字符串 说明 当S1>S2返回值>0;当S1 例子 SpinEdit1.Value := AnsiStrComp(PChar(Edit1.Text), PChar(Edit2.Text)) ━━━━━━━━━━━━━━━━━━━━━ 首部 function AnsiStrIComp(S1, S2: PChar): Integer; $[SysUtils.pas 功能 返回比较两个指针字符串 说明 当S1>S2返回值>0;当S1 例子 SpinEdit1.Value := AnsiStrIComp(PChar(Edit1.Text), PChar(Edit2.Text)) ━━━━━━━━━━━━━━━━━━━━━ 首 部 function AnsiStrLComp(S1, S2: PChar; MaxLen: Cardinal): Integer; $[SysUtils.pas 功能 返回比较两个指针字符串指定长度 说明 当S1>S2返回值>0;当S1 子 SpinEdit1.Value := AnsiStrLComp(PChar(Edit1.Text), PChar(Edit2.Text), SpinEdit2.Value) ━━━━━━━━━━━━━━━━━━━━━ 首