delphi 中如何定义 一个返回字符数组的 function

function StrToArray(str:string):array of Char;
var
I,strLength : Integer;
arr:array of Char;
begin
setlength(arr, sizeof(str));
for I := 0 to sizeof(str)-1 do
begin
arr[I] := str[I+1];
end;
Result:= arr;
end;
怎么改才对啊 ?

第1个回答  推荐于2016-04-23
两种方法:
1、带一个参数返回。
var
arrTest: array[0..3] of string;
//声明函数
function MyFunc(var arrTest: array of string): Boolean;
2、定一个一个返回类型。
type
TArrResult = array[0..3] of string;
//声明函数
function MyFunc: TArrResult;
******************************************************************
这样改:
type
TArrTest = array of string;

function StrToArray(str:string): TArrTest;
var
I,strLength : Integer;
arr:TArrTest;
begin
setlength(arr, sizeof(str));
for I := 0 to sizeof(str)-1 do
begin
arr[I] := str[I+1];
end;
Result:= arr;
end;本回答被提问者采纳

delphi 中如何定义 一个返回字符数组的 function
1、带一个参数返回。var arrTest: array[0..3] of string;\/\/声明函数 function MyFunc(var arrTest: array of string): Boolean;2、定一个一个返回类型。type TArrResult = array[0..3] of string;\/\/声明函数 function MyFunc: TArrResult;这样改:type TArrTest = array of string;function...

delphi 返回数组
先在你的原过程最后加一句:result:=p;主过程接收如下:var reP:stringarray;i:integer;begin rep:=tiqu('123|asd|fd|as|sd|||');for i:=0 to 27 do begin \/\/reP[i];end;end;

delphi 中如何定义字符型数组?
字符数组应该可以有3种方式 1 arr:array [0..99] of char;100个字符,第一个序号为0,如arr[0]2 s:string; setlength(s,100);100个字符,第一个序号为1,如s[1]3 p:pchar; getmem(p,100);100个字符。第一个序号也是为1 下面是一个例子 var letter:array[1..100]of char;定义100包...

delphi中format函数详解
format('% * . * f',[10,4,num]);解析: 返回num变量格式化后的字符。整数位为10位,小数后为4位。例如:num=1234567890.123456,处理后为“1234567890.1234”的字符串。format函数,返回一个指定格式的字符。function Format(const Format: string; const Args: array of const): string;具体...

delphi中初始化一个字符数组
1、如果是静态数组,定义的时候必须指定长度,如:var array: array[0..2] of string = ("hello","world","yes");(注意,局部变量不能初始化)。2、如果是动态数组,则:var array: array of string;i: integer;begin SetLength(array, len); \/\/len是运行时动态指定的。\/\/然后遍历数组...

请问这个delphi的function怎么返回result值啊
1,一个function或者procedure只完成一个较为简单的任务。2,最好多使用一点procedure。因为function的返回类型是必须有严格的类型的。比如说动态数组就很难返回。3,function中的result其实就是一个自带的变量。是可以多次赋值的。function结束的时候只返回最后一次被赋值的值。4,类似 [01..31] 这样的...

delphi操作字符数组
再开个数组a:array[1..5] of boolean;然后初始化该数组fillchar(a,sizeof(a),#1);最好下面改为随机取一个数x,然后判断是否取过 if a[x] then begin edit1.text:=s[x];a[x]:=false;end;delphi跟pascal差不多吧。。我按pascal做的。

delphi中几个函数的含义和用法
SetLength: 设定数组长度 SetLength(MyArray, 5) \/\/ 设定MyArray数组长度为5 High: 传回注脚的最大值,如果参数为数组类型的话,则是返回数组索引的最大值 High(MyArray) \/\/ 返回值为5 Copy: 字符串截取函数 Copy('substring', 4, 3) \/\/ 返回值为‘str’

delphi 数组 赋值(字符串)问题
edit1.text内容为144,288,468,612 这里edit1中的内容本身就是一个字符串,并不能直接赋值给字符串数组 如果你的edit内容很规则,都是用","分割,可以这样 var sl:TStrings;i:integer;MyArray: array[0..3] of string;begin sl:=TStringList.Create;sl.CommaText :=edit1.text;for i := 0...

delphi中找不到LOW和HIGH函数的定义
short string type Returns 0 Open array Returns 0 short string parameter Returns 0 function High(X);Description In Delphi code, call High to obtain the upper limit of an Ordinal, Array, or ShortString value. The result type is X, or the index type of X.X is either a type ...

相似回答