Delphi 7.0常用函数由一句或多句代码组成,可以实现某个特定的功能。使用函数可以使代码更加易读、易懂,加快编程速度及减少重复代码。过程与函数类似,过程与函数最重要的区别在于,过程没有返回值,而函数能有返回值。
在Delphi 7.0中,已为我们定义好了非常多的函数,大致分类有6种:数据类型转换函数、字符串、数组操作函数、文件、磁盘操作函数、内存、指针操作函数、数学运算函数、日期函数。 在Delphi中调用函数,一般情况下可以直接使用函数即可,但由于有一些函数未包含在Uses中列出的单元中(默认单元有Windows,Messages,SysUtils,Variants,Classes,Graphics, Controls,Forms,Dialogs,所以需要我们手动添加单元。比如,MidStr函数就未包含在这些单元中,MidStr所属单元在StrUtils中,因此我们将StrUtils添加Uses中即可。 在本手册中,凡是未包含在默认列出的单元中的函数,都标明了其所属的单元,使用时应当注意。 一、数据类型转换函数 1.FloatToStr 2.IntToStr 3.IntToHex 4.StrToInt // 保存新的字符串 begin S := 'I Love China!'; //下面将获取I Love China中的“Love”字符串。 MyStr := Copy(S, 3, 4); end; 执行结果,MyStr等于“Love”,“Love”字符串在“I begin S1 := Concat('A', 'B'); // 连接两个字符串,S1变量等于AB。 S2 := Concat('Borland', ' Delphi', ' 7.0'); // 连接三个字符,S2变量等于Borland Delphi 7.0。 end;
begin S := 'I Like Reading CPCW.'; // 下面的代码将删除S变量中的“C”字符。 Delete(S, 16, 1); end; 此时S变量则是I begin i := High(arrText); // i的值则为9 end;
begin S := 'Wat is your name?'; // 上面句子中的What单词查一个“h”字符,下面使用Insert函数将h添加进去。 Insert('h', S, 2); // 将“h”从第2位处插入。 end;
6.LeftStr begin nLen1 := Length('CPCW'); nLen2 := Length('电脑报'); end; 执行结果,nLen1等于4,nLen2等于6。由于一个汉字相当于两个字符的长度,所以3个汉字的长度为6。
begin i:= High(arrText); // i的值则为1 end;
begin S := 'ABC'; A := UpperCase(S); // 经过UpperCase函数转换后,A则等于abc。 end;
10.MidStr begin nPos := Pos('Like', 'I Like Reading!'); end; 此时nPos等于3。如果没有查找到,则nPos为0。 注意:Pos函数在查找时是要区分字符大小的。如果要实现不区分大小,那么需要使用UpperCase或LowerCase函数将两个参数的字符(串)转换为“大写”或“小写”再进行查找。 另外还有一个查找字符(串)的函数----AnsiPos,该函数的使用方法与Pos函数完全一样。当你查找的是汉字时,最好使用AnsiPos函数。
12.RightStr // 定义一个动态数组 begin SetLength(S, 10); // 当设置后,S变量只能赋值长度为10的字符串。 SetLength(arrText, 10); // 这里声明了长度为256的Char型数组 begin StrPCopy(arrChar, 'Come on, baby!'); end;
begin S := ' Delphi 7.0 '; S := Trim(S); end;
16.TrimLeft 17.TrimRight begin S := 'abc'; A := UpperCase(S); // 经过UpperCase函数转换后,A则等于ABC。 end;
begin S := 'This is a book.'; AssignFile(F, // 以追加的方式打开文件 Writeln(F, S); // 将S变量中的内容追加到文本尾后。 CloseFile(F); // 关闭文件 end;
begin sDir := ChDir(sDir);
begin AssignFile(F, // 打开文件 while not EOF(F) do begin // 使用While循环,一直判断是否到了文件未尾 Readln(F, S); // 读取一行文本 AllText := AllText + S; end; CloseFile(F); // 关闭文件 end; // 用于保存删除状态 begin IsOK := // 函数执着后,将结果返回给IsOK变量。如果IsOK变量为True,则表示文件删除成功。 if IsOK then ShowMessage('文件删除成功!') else ShowMessage('文件删除失败!'); end;
begin IsExists := if IsExists then ShowMessage('Windows文件夹存在!') else ShowMessage('Windows文件夹不存在!'); end;
begin FreeSize := DiskFree(3); // 获取C盘中的剩余空间。返回的值是以“字节”为单位的。 end;
begin DiskSize:= DiskSize(3); // 获取C盘的空间。返回的值是以“字节”为单位的。 end;
begin AssignFile(F, // 打开文件 while not EOF(F) do begin // 使用While循环,一直判断是否到了文件未尾 Readln(F, S); // 读取一行文本 AllText := AllText + S; end; end;
begin AssignFile(F, // 打开文件 CloseFile(F); // 关闭文件 Erase(F); // 删除文件。在删除文件之前必须先关闭文件。 end;
begin IsExists := if IsExists then ShowMessage('该文件存在!') else ShowMessage('该文件不存在!'); end;
begin AssignFile(F, // 打开文件 nSize := FileSize(F); // 获取文件大小。 CloseFile(F); // 关闭文件 end; 这样将不能成功创建MyFolder文件夹。 // 打开文件 end; // 打开文件。如果文件不存在,将会在C盘中创建MyFile.txt文件。如果文件存在,将会覆盖MyFile.txt中的所有内容。 end;
begin AssignFile(F, // 打开文件 Readln(F, S); // 读取一行文本到S变量中 end;
begin AssignFile(F, // 更名为NewFile.txt end;
begin S := 'This is a book.'; AssignFile(F, // 创建新文件 Writeln(F, S); // 将S变量中的内容写入文本中。 end;
begin Buffer := AllocMem(256); // 分配大小为256个字节的内存空间 end; // 声明一个Integer(整型)指针 begin New(P); P^ := 100; Dispose(P) // 释放内存 end;
begin GetMem(Buffer, 256); // 分配大小为256个字节的内存空间。 FreeMem(Buffer); // 释放内存空间 end;
begin GetMem(Buffer, 256); // 分配大小为256个字节的内存空间。 end; // 声明一个Integer(整型)指针 begin New(P); // 分配内存 P^ := 100; // 赋值 end;
begin r := Abs(-2.8); // r等于 2.8 i := Abs(-156); // I 等于 156 end;
2.Exp 3.Floor 5.Max 6.Min (所在单元:Math) |