字符串操作两个写法,为什么有个是错的啊 请帮忙看看!

shiqx429 2008-03-03 03:53:32
以下是正确的

char string3[] = "hello1";
char string4[] = "hello";
TPtr8 ptr1((TUint8*) string4,50,100);
TPtr8 ptr2((TUint8*) string3,50,100);
ptr1.Copy(ptr2);
下面这个是错的
char* string1 = "abcd";
char* string2 = "efgh";
TPtr8 ptr1((TUint8*) string1,50,100);
TPtr8 ptr2((TUint8*) string2,50,100);
ptr1.Copy(ptr2);//出错,异常代码是3
请问这是怎么回事啊? 我现在就是想用char* 下面这段代码我应该如何处理 ,还有这个只是测试用,实际用的时候上面会传下来一个char*,(因为现在正在移植c的代码)的字符串,这个字符串大小说不准,我还不想在函数里弄一个TBuf<n>这个,因为传下来的不固定的,请问各位同学有没有什么解决的办法啊 谢谢
...全文
80 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
shiqx429 2008-03-03
  • 打赏
  • 举报
回复
哦 原来如此啊 我今天一天都在弄 char*和TPtr如何转换,我快晕死了,谢谢你
请问我在SDK文档上哪里能找到你这句话的内容
我看别人用的时候也是
TPtrC 对char string[]
TPtr对char string[]
就是没看见谁TPtr对char *string这么使用 当时还很奇怪呢
所以能说一下在SDK的那个部分有说这个问题的啊 谢谢
anel 2008-03-03
  • 打赏
  • 举报
回复
TPtrC 对char string[]和char *string都可以用,只是不能改
而TPtr只能对char string[]使用.
shiqx429 2008-03-03
  • 打赏
  • 举报
回复
回楼上:
这个我知道,这个只是测试用的,length和maxlength我会处理的 谢谢
anel 2008-03-03
  • 打赏
  • 举报
回复
如果string3再长一点,"正确"变成错误

3,119

社区成员

发帖
与我相关
我的任务
社区描述
塞班系统(Symbian系统)是塞班公司为手机而设计的操作系统,它的前身是英国宝意昂公司的 EP ( Electronic Piece of cheese)操作系统。
社区管理员
  • Symbian社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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