请问数组怎么取指针,怎么能得到数组的全部内容?(20分)

  • 主题发起人 主题发起人 小菜虫儿
  • 开始时间 开始时间

小菜虫儿

Unregistered / Unconfirmed
GUEST, unregistred user!
请各位高手帮帮忙
我定义这样一个数组 fskdata:array[1..128] of byte

请问这个数组的指针怎么表示??
请问我怎么把数组的内容转换成字符串??怎么把字符串赋值到数组里呢?
 
var
str : string ;
i : integer;
begin
str :='';
for i := 1 to 128 do
str := str + chr(fskdata);
 
1.addr(fskdata);
2.ss:string;
SetLength(ss,128);
move(fskdata[1],ss[1],128);
move(ss[1],fskdata[1],128)
// 128,或Length(ss);
 
procedure TForm1.btn1Click(Sender: TObject);
var
A:array[1..128] of Byte;
S:string;
I:Byte;
begin
for I:=Low(A) to High(A) do
A:=I;
Pointer(S):=@A;
end;
 
第一个问题还没有解决,请问这个数组的指针怎么表示??
因为函数定义的参数类型是BYTE* pInfo,,请问怎么写??
 
1、静态数组指针就是 @fskdata,这个不需要讨论。
2、Pascal 函数中如果参数是常数或是变参,他将直接传递地址,不用你再转化!
C 定义:
LPTSTR MyFunc(BYTE* pInfo)
Pascal 定义:
function MyFunc(const fskdata: array[1..128] of Byte): string;
//其中 const 可以是 var
 

Similar threads

回复
0
查看
848
不得闲
回复
0
查看
1K
不得闲
S
回复
0
查看
1K
SUNSTONE的Delphi笔记
S
S
回复
0
查看
900
SUNSTONE的Delphi笔记
S
S
回复
0
查看
3K
SUNSTONE的Delphi笔记
S
后退
顶部