delphi怎么把一维数组赋值给memo delphi

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了delphi怎么把一维数组赋值给memo delphi相关的知识,希望对你有一定的参考价值。

怎么把一维数组赋值给memo ??

for l := 0 to memo1.Lines.Count - 1 do
begin
b[l] := inttostr(a[l]);
memo2.Lines.Add(b[l]);
end;

怎么改??

1、for i := 0 to 99 do name[i] := #0;
2、FillChar( name, SizeOf(name), 0 );

例如:var

 a:array of Integer;  //定义a为动态数组
 count,i:Integer;    
begin
 SetLength(a,10);    //给数组a确定大小
 for count:=0 to 9 do//给数组a循环赋值
 begin
   a[count]:=count;
 end;
 for i:=0 to Length(a)-1 do  //将a的数组循环添加到memo1中
 begin
   Memo1.Lines.Add(IntToStr(a[i])) ;
 end;
end;

补充:Delphi,是Windows平台下著名的快速应用程序开发工具(Rapid Application Development,简称RAD)。它的前身,即是DOS时代盛行一时的“BorlandTurbo Pascal”,最早的版本由美国Borland(宝兰)公司于1995年开发。主创者为Anders Hejlsberg。经过数年的发展,此产品也转移至Embarcadero公司旗下。Delphi是一个集成开发环境(IDE),使用的核心是由传统Pascal语言发展而来的Object Pascal,以图形用户界面为开发环境,透过IDE、VCL工具与编译器,配合连结数据库的功能,构成一个以面向对象程序设计为中心的应用程序开发工具。

参考技术A var
a:array of Integer; //定义a为动态数组
count,i:Integer;
begin
SetLength(a,10); //给数组a确定大小
for count:=0 to 9 do//给数组a循环赋值
begin
a[count]:=count;
end;
for i:=0 to Length(a)-1 do //将a的数组循环添加到memo1中
begin
Memo1.Lines.Add(IntToStr(a[i])) ;
end;
end;本回答被提问者采纳
参考技术B begin
for i:=Low(a) to High(a) do
mmo1.Lines.Add(IntToStr(a[i]))
end;

干嘛 要用 memo1.Lines.Count 要是a[i] 溢出了怎么办?

C++二维数组给一维数组赋值

比如我有个数组
char a[3][3] = 1,2,3,4,5,6,7,8,9;
如何把这个数组赋值给数组
char b[3];
b为123,456,789

二维数组给一维数组赋值有两种情况:

1 按元素,逐个赋值到对应目标元素上。

适用于所有情况,可以自定义规则,遍历二维数组,并赋值到一维数组的对应位置上。由二维数组的行列值计算出一维数组的偏移量,这部分算法可以随意设计,有很高的灵活度。

比如,将二维数组第一列复制出来称为一个单独的一维数组,可以写作:

int a[100][100], b[100];
int i;
//二维数组赋值操作可以写在这里,与主题无关,代码从略。
for(i = 0; i < 100; i ++)
    b[i] = a[i][0];//第一列即0列,C语言下标从0开始。

2 整体复制。

二维数组中的元素本身是连续存储的,如果要将二维数组连续的一组数据赋值给一维数组,可以直接调用memcpy函数。该函数声明在cstring中,形式为

void* memcpy(void *dst, void *src, size_t length);

功能为将src地址上,长度为length字节的数据,复制到dst地址上。

比如将第二三两行(这两行是连续的),复制到一维数组中,代码可以写作:

int a[100][100],b[200];
//赋值,从略。
memcpy(b,a[1],sizeof(b));//整体复制。
参考技术A char b[3]; b的元素是char,456和789对于char类型的整数来说是溢出的
b是int类型的数组才行
int b[3];
int i;
for(i=0;i<3;i++)
b[i]=100*a[i][0]+10*a[i][1]+a[i][2];

这样b就是123,456,789了
参考技术B char类型的字符数组,存放整型数字,这个整型数字实际上是某个字符的ASCII码,比如41--A,42---B等。但是如果超过了ASCII中能够显示的字符范围,就会显示乱码。
建议将char b[3];修改为char *b[3]
参考技术C char b[3];
char a[3][3] = 1,2,3,4,5,6,7,8,9;
char temp[3];
for( int i = 0; i < 3; i ++)

for( int j =0; j< 3; j ++)

temp[j] = a[i][j];



b[i] = temp;
本回答被提问者采纳

以上是关于delphi怎么把一维数组赋值给memo delphi的主要内容,如果未能解决你的问题,请参考以下文章

C语言中怎么把一维数组赋给另外一个一维数组

C++二维数组给一维数组赋值

怎么样给一个一维数组全赋成false

怎么样给一个一维数组全赋成false

c语言怎么把二维数组的字符串给到一维数组?

怎么给一个二维数组赋不同的值