码迷,mamicode.com
首页 > 其他好文 > 详细

pascal中的xor,shr,shl,Int(),ArcTan(),copy,delete,pos和leftstr,RightStr等详解

时间:2018-12-27 19:01:41      阅读:147      评论:0      收藏:0      [点我收藏+]

标签:val   数值转换   nbsp   例子   之间   ESS   pre   mes   integer   

数学函数:Inc(i)使I:=I+1;Inc(I,b)使I:=I+b;Abs(x)求x的绝对值例:abs(-3)=3Chr(x)求编号x对应的字符。

例:Chr(65)=’A’chr(97)=’a’chr(48)=’0’Ord(x)求字符x对应的编号。例:ord(‘A’)=65ord(‘a’)=97另外:ord(false)=0ord(true)=1Sqr(x)求x的平方。

例:sqr(4)=16Sqrt(x)求x的开方.例:sqrt(16)=4round(x)求x的四舍五入

 

delphi中的copy,delete,pos和leftstr,RightStr的用法

copy举个例子:str:=“123456”;str1:=Copy(Str,2,3);结果就是str1等于234。

Copy有3个参数,第一个是你要处理的字符串,第二个是你要截取的开始位置,第3个是截取位数。

当你的第3个参数大于字符长度,那么效果就是取开始位置后的所有字符。

str1:=Copy(Str,2,10);结果就是str1等于23456。leftstr和pos假设字符串是S:=’Del

 

leftstr和pos

假设字符串是 S := ’Delphi is the BEST’, 那么 
LeftStr(S, 5) := ’Delph’ //即S前5位字符
MidStr(S, 6, 7) := ’i-is-th’// 即s的第六位开始后面7个字符(-:=空格)
RightStr(S, 6) := ’e-BEST’//即S后面的字符(-:=空格)

取出子串在父串中第一次出现的位置 
例如 
pos(‘b‘,‘abcd‘); 
返回结果是2//pos就是显示B在整个字符中排第几位

 

delete

列子:

var
S: string;
begin
S := ‘12345‘;
Delete(S, 2, 2);
ShowMessage(S);//显示 145 即删除 23.即是删掉S的第二位开始的2个字符。
end;

 

 

一、数学函数: 

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

 

pascal中的xor,shr,shl,Int(),ArcTan(),copy,delete,pos和leftstr,RightStr等详解

标签:val   数值转换   nbsp   例子   之间   ESS   pre   mes   integer   

原文地址:https://www.cnblogs.com/Coder-MIFir/p/10185275.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!