请问字符数组和字符串赋值不兼容吗?

birdhzx 2003-10-18 04:38:17
定义:
var
data1:Array[0..256]of char;
patBaseInf:string;
.
.
.
.

data1:=patBaseInf; ???
------
//[Error] MC32_42p.pas(245): Incompatible types: 'Array' and 'String'
...全文
51 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
hiflower 2003-10-18
  • 打赏
  • 举报
回复
当然是啦
patBaseInf[1] 即是 string 内容的首地址。
birdhzx 2003-10-18
  • 打赏
  • 举报
回复
Move(patbaseinf[1],data1,Min(Length(patbaseinf),Length(Data1)));
patBaseInf里面的内容会全部导入data1里面吗?
我怕内容会有丢失,当然patBaseInf内容小于data1的长度.
我赶得急,所以没仔细去理解了
谢谢
hiflower 2003-10-18
  • 打赏
  • 举报
回复
patBaseInf:=Data1; 是可以的
反之则只能通过 StrCopy 或 Move 了。

Move(patbaseinf[1],data1,Min(Length(patbaseinf),Length(Data1)));
csntgao 2003-10-18
  • 打赏
  • 举报
回复
给你个范例看看!

var
Datas:Array[0..255] of char;
str:String;
begin
str:='12345';
StrCopy(@Datas[0],PChar(Str));
ShowMessage(String(PChar(@Datas[0])));

end;
birdhzx 2003-10-18
  • 打赏
  • 举报
回复
怎么取得string的首地址这样一个指针?谢谢
wzds2000 2003-10-18
  • 打赏
  • 举报
回复
应改用指针就可以了。。。
wzds2000 2003-10-18
  • 打赏
  • 举报
回复
对不起,说错了!!!
我看成data1:Array[0..256]of string;了,不好意思 :(
popmailzjw 2003-10-18
  • 打赏
  • 举报
回复
那当然了,不过你可以用指向字符数组的指针,并赋予字符串变量的首地址
wzds2000 2003-10-18
  • 打赏
  • 举报
回复
data1[x]:=patBaseInf;//x为0至256的整数
这样是可以的。。。
waxi 2003-10-18
  • 打赏
  • 举报
回复
您说对了,呵呵

5,386

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧