废话不多说了,直接上例子解说:

procedure TForm1.Button1Click(Sender: TObject);
var
  aa: array[0..1]of AnsiChar;
  bb1: string;
begin
  aa[0] := AnsiChar('1');
  aa[1] := AnsiChar('2');

bb1 := StrPas(aa);
  ShowMessage(bb1);    //这里显示不正确
end;

procedure TForm1.Button1Click(Sender: TObject);
var
  aa: array[0..2]of AnsiChar;
  bb1: string;
begin
  aa[0] := AnsiChar('1');
  aa[1] := AnsiChar('2');

bb1 := StrPas(aa);
  ShowMessage(bb1);   //这就正确了
end;

为什么呢??  没时间深入研究了,估计是StrPas的Bug。

不是bug吧 这个字符串要有结束符吧
不然你写个StrPas看看,没有结束符,咋判断字符串长度?!

类似Obj-C:
char xx[2];
xx[0] = '0';
xx[1] = '1';
[NSString stringWithUTF8String:xx];
这样你是获得不到正确结果的,要下面这样
char xx[3];
xx[0] = '0';
xx[1] = '1';
xx[2] = '\0';
[NSString stringWithUTF8String:xx];

http://www.cnblogs.com/AnyDelphi/archive/2011/10/15/2212755.html

最新文章

  1. 使用vscode访问和修改远程计算机文件
  2. 解读ASP.NET 5 & MVC6系列(3):项目发布与部署
  3. 使用Java判断字符串中的中文字符数量
  4. ASP.NET MVC使用Bootstrap系列(4)——使用JavaScript插件
  5. StringBuilder和StringBuffer区别
  6. Centos Python2 升级到Python3
  7. react-native 的微信SDK辅助包,支持微信登录、微信分享、微信支付
  8. 【PHP】phpcms 关联连接修复
  9. Lua参考手册
  10. 关于css中overflow的一些理解
  11. C++服务器设计(六):设备连接的生命周期管理
  12. windows不能在本地计算机启动SQL Server(MSSQLSERVER)
  13. MySQL 出现 The table is full 的解决方法
  14. Spring之循环依赖
  15. 前端发展态势 && 前端工作流程个人浅析
  16. 【Floyd】BZOJ1491: [NOI2007]社交网络
  17. k8s部署使用Dashboard(十)--技术流ken
  18. docker 删除指令
  19. 对象引用对于非静态的字段、方法、属性Program.Print()是必需的
  20. MarkDown学习——基础用法

热门文章

  1. iOS用同一个工程创建两个不同版本的应用
  2. 【数据库】sql2008卸载和默认实例的删除 标签: 数据库 2014-11-16 15:15 5878人阅读 评论(30)
  3. mySQL start service失败终极解决办法
  4. Java练习 SDUT-3328_JAVA判断合法标识符
  5. PHP header 的7种用法
  6. MapReduce数据流-Mapper
  7. [翻译]Python中yield的解释
  8. hdu 1599 find the mincost route(无向图的最小环)
  9. H3C OSI参考模型层次结构
  10. CSS优化,提高性能的方法有哪些?