[array of char string]求助:字符串转换成定长字符数组

Radar2006 2008-11-12 12:15:58

定义:str_bh: array[0..49] of Char;

这个不能得到定长字符数组:StrPCopy(aa.str_bh, '0001');

怎样才能得到定长的字符数组,就是'0001'后用空格填充?
...全文
254 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
D_Q 2008-11-17
  • 打赏
  • 举报
回复
是啊 中间有个 #0
ideation_shang 2008-11-12
  • 打赏
  • 举报
回复

var
str_bh: array[0..49] of Char;
str_tmp:string;
begin
str_tmp:='0001';
FillChar(str_bh, Length(str_bh), Ord(' '));
Move(str_tmp[1],str_bh,Length(str_tmp));
ShowMessage(str_bh)
end;
panrongzeng 2008-11-12
  • 打赏
  • 举报
回复
setlength();
Radar2006 2008-11-12
  • 打赏
  • 举报
回复

ShowMessage(Format('长度:%d 内容:%s',[Length(str_bh),str_bh]));
换成
ShowMessage(str_bh)
还是四位
Radar2006 2008-11-12
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 D_Q 的回复:]
汗就1个字
ShowMessage(Format('长度:%d 内容:%s',[Length(str_bh),str_bh]));
[/Quote]
----------------------------------------------------------------
谢谢关注!这句换成ShowMessage(str_bh)还是四位?
fangsp 2008-11-12
  • 打赏
  • 举报
回复
解决就好
再帮楼主顶一帖
凑个人气
D_Q 2008-11-12
  • 打赏
  • 举报
回复
汗就1个字
ShowMessage(Format('长度:%d 内容:%s',[Length(str_bh),str_bh]));
D_Q 2008-11-12
  • 打赏
  • 举报
回复
StrLen 是忽略空格的哟 检测有效位数的:(
Radar2006 2008-11-12
  • 打赏
  • 举报
回复
下午结贴给分:D
Radar2006 2008-11-12
  • 打赏
  • 举报
回复
谢谢上面两位的热心帮助,经测试
D_Q 的长度是4
ideation_shang 通过
D_Q 2008-11-12
  • 打赏
  • 举报
回复
其实你需要了解 StrLen 和 lstrcpy 这两个函数

var
str_bh: array[0..49] of Char;
begin
FillChar(str_bh,Length(str_bh),#$20);//初始化数组
lstrcpy(str_bh, '0001');//赋值
ShowMessage(Format('长度:%d 内容:%s',[StrLen(str_bh),StrPas(str_bh)]));
end;

16,749

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 语言基础/算法/系统设计
社区管理员
  • 语言基础/算法/系统设计社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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