delphi中string如何转化为array of char

限时加码!20+主流AI编程工具免费用 购周边加赠Coding Plan Lite,Claude Code、Cursor等即刻畅享,学习进阶更高效! 阅读详情

1:我知道,我对这方面研究很深!标准答案:

例子:
procedure TForm1.Button1Click(Sender: TObject);
var
mychar: array of char;
mystr: string;
begin
mystr:=‘this’;
setlength(mychar,4); //设置数组长度
move(mystr[1],mychar[0],length(mystr)); //赋值
end;

/////经过测试
2:var
ss:string;
i:integer;
aa:char;
begin
ss:=‘abcde’;
for i:=1 to length(ss) do
begin
aa:= ss[i];
showmessage(aa) ;
end;
end;
试试看你就明白了…呵呵
3:不用函数,字符串实际上就是字符数组
因为因为多,所以起了一个名字叫string
st:string;
ch:char;
st:=‘hello,world’;
ch:=st[3];

你可以通过下标访问那个字符
4:ss:string ;
cc:char ;
i:integer ;

cc:=ss[i] //注意此处i必须大于 0,下于等于 length(ss)

5:Var
_str:string;
carr:array [1…255] o char;
begin
_str:=‘What Can I Do For You ?’;
FillChar(cArr,SizeOf(carr),0);
Move(_Str[1],CArr,LengTh(_Str));
// CArr为你需要的结果!
end;

6:var
cArray: array[0…30] of Char; //定长字符数组
dArray: array of Char; //动态字符数组
str: string;
iLen: Integer;
begin
str := ‘wo shi xiaobenben’;
iLen := Length(str);

FillChar(cArray, sizeof(cArray), #0);
Move(PChar(str)^, cArray[0], iLen);

SetLength(dArray, iLen 1);
FillChar(dArray[0], iLen 1, #0);
Move(PChar(str)^, dArray[0], iLen);

Caption := cArray ’ - ’ PChar(dArray);
end;

7:我找到别的答案:

s1:string;
s2:array[0…255] of char;

strmove(s2,pchar(s1),length(s1));
谢谢大家

8:s1:stirng;
s2:array[1…123]of char;
s2:=@s1[1]^
9:大体就是这样了:
var
mychar: array of char;
mystr: string;
begin
mystr:=‘name’;
setlength(mychar,4); //设置数组长度
move(mystr[1],mychar[0],length(mystr)); //赋值
end;

10:可以不用MOVE拷贝内存的
11:s1:string;
s2:array[1…123]of char;
s2:=@s1[1]^;
编译不过。
12:其实你s2:pchar;
s2:=@s[1];
就可以了,传递数组的时候你传递指针就行了,和C/C 一样,
13:@s[1]指向的可能是非0结尾的串,例如 s:=‘123’;
但@s[1]可能是123¥%34阿df#0

所以应该是:

s2:=pchar(s1);
14:就是这个了:

s1:string;
s2:array[0…255] of char;

strmove(s2,pchar(s1),length(s1));

15:可以结束了

Delphi Char、PcharString 相互转换 【代码】Delphi Char、PcharString 相互转换。 阅读详情

相关推荐

Delphi字符串类型转换实战:Char、PCharString的高效互转技巧

本文深入探讨了Delphi开发中Char、PCharString类型之间的高效转换技巧。针对Windows API调用、DLL交互及原始数据处理等核心场景,详细解析了直接类型转换、StrPCopy、SetString等方法的原理、性能差异与适用条件,并重点强调了内存管理、生命周期控制及编码转换等关键陷阱的规避策略,帮助开发者编写更稳健、高效的Delphi代码。

weixin_29213655的博客 444

delphiString,PChar,PByte,Array of CharArray of Byte 互相转换

delphiString,PChar,PByte,Array of CharArray of Byte 之间的互相转换

Delphi字符类型转换实战:String、PCharChar数组的高效互转技巧

本文详细介绍了DelphiString、PCharChar数组之间的高效互转技巧,涵盖直接转换、内存管理及性能优化等关键点。通过实战代码示例,帮助开发者掌握与Windows API交互及数据处理中的字符串转换最佳实践,提升Delphi开发效率。

t8u9v0w1x的博客 618

delphi数组作为参数传值

在函数中如果数组的个数不定,可以使用开放数组参数 实参可以接受静态数组和动态数组 procedure p1(a:array of Byte); begin ShowMessage( IntToHex( Integer(@a),2)); ShowMessage(IntToStr(a[0])); end; procedure TForm1.btn1Click(Sender: T...

weixin_30376509的博客 681

delphi char数组、string和Pchar的相互转换

因为要调用windows的api或者给vc++写接口,很多地方都要用到pchar,现在将char数组、string和pchar之间的相互转换都列出来,都是网上找的资料,我总结一下。 1.string转换成pchar    可以使用pchar进行强制类型转换,也可以使用StrPCopy函数 var s:string; p,p1:PChar; begin s:='Hell

kunlun122的专栏 2万+

delphiString,PChar,PByte,Array of CharArray of Byte 转换

delphiString,PChar,PByte,Array of CharArray of Byte 转换vars:string;pc:pchar;pb:pbyte;ac:array[1..100] of char;ab:array[1..100] of byte;i:integer;begin  s:=this is a t

luoyanqing119的专栏 7772

delphi中,char数组、string和Pchar的相互转换

delphi char数组、string和Pchar的相互转换 原创kunlun122 最后发布于2013-10-31 17:42:31 阅读数 18702 收藏 1.string转换成pchar 可以使用pchar进行强制类型转换,也可以使用StrPCopy函数 var s:string; p,p1:PChar; begin s:='Hello Delphi'; ...

ijong的笔记 1887

delphistringarray of char

   在delphi中如何将string转成array of char?   网上的例子说用for循环,一个个将字符赋值给char数组;   系统带的有个函数的,function StrLCopy(Dest: PChar; const Source: PChar; MaxLen: Cardinal): PChar;   source用pchar强转下,char数组名直接作第一个参数,MaxLe

CODER 沙漠孤狐 1万+

Delphi常用数据类型:char, array of char, PChar

 char,   array   of   char,   PChar都是简单类型,简单类型当然通用性好,这个很容易理解,只要保证内存布局一样就可以了,在这个前提下如果有必要可以采取手段欺骗编译器的强类型检查。Delphi为什么提出string类型?肯定有它的道理。什么道理?用C的同志们都知道处理什么类型都没有处理字串类型费劲,Delphi作为如此优秀的RAD工具自然要想办法解决这个问题。事实上,

西瓜地 5925

c语言里char string类型转换,delphi pchar char byte string转换问题

delphi pchar char byte string转换问题注:Delphi中的Char,PChar,PByte,Byte,String的相互转换,您是不是也遇到过,为此头疼过吗?你要是明白了他们的原理就会轻松了。话题064840的标题是: Q:关于PChar的用法 (200分)分类:非技术问题 PTiger (1998-10-19 18:33:00)我要从tPing.ini中读取Host段...

weixin_39706861的博客 423

delphistring,pchar,array of char,pointer,Pbyte,array of byte之间的转化

写程序时,老是被几个数据类型搞的晕头转向,现在总结一下。 基本上都是从网上查的,但又不是在一个地方,所以标记成‘转载’但又不好写从哪里转载的。有抄袭请见谅。 var s:string; p:pchar; a:array[1..20] of char; 那么三者之间的转换如下: 1、字符串到PChar     p:=PChar(s); 2、PChar到字符串     s:=p;

ghs79的专栏 3425

string,pchar,array of char之间的转化(转贴)

string,pchar,array of char之间的转化2009-07-09 10:15设有以下三个变量:vars:string;p:pchar;a:array[1..20] of char;那么三者之间的转换如下:1、字符串到PChar    p:=PChar(s);2、PChar到字符串    s:=p;3、PChar到字符数组    StrCopy(@a,p);4、字符数组到PChar

6744

char, array of char, PChar

char, array of char, PChar char, array of char, PChar都是简单类型,简单类型当然通用性好,这个很容易理解,只要保证内存布局一样就可以了,在这个前提下如果有必要可以采取手段欺骗编译器的强类型检查。Delphi为什么提出string类型?肯定有它的道理。什么道理?用...

weixin_30347335的博客 87

String[60]类型的值怎么赋给array[0..59] of Char类型啊?

String[60]类型的值怎么赋给array[0..59] of Char类型啊? Delphi / Windows SDK/APIhttp://www.delphi2007.net/DelphiBase/html/delphi_20061218235013121.html 不知道     String[60]类型的值怎么赋给array[0..59]   of   Char类型     ...

weixin_34227447的博客 132

Delphi、PCharChar数组的比较

Delphi、PCharChar数组的比较      stringChar数组都是一块内存, 其中存放连续的字符. string保存具体字符的内存对用户 是透明的, 由Delphi管理它的分配, 复制和释放, 用户不能干预(其实也可以, 不过是通过 非法途径). Char数组就不必说了吧? PChar是一个指针, 它的大小只有32位. 定义时由Delphi自动填0. 要将PChar作为

xinzheng_wang的博客 3009
上一篇: 两个变量的值交换方法
下一篇: QQ农场外挂源代码
ysgs129
博客等级 码龄18年 15粉丝 68原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ysgs129

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值