symbian 字符串及格式化

问:

小弟在研究ListBox的范例代码时遇到以下状况:  
   
  _LIT(KListItemFormat,   "/t%S/t/t");  
   
  代码:  
  TBuf<32>   item;  
  item.Format(KListItemFormat,   _L("Ha   ha"));  
  结果:  
  程序出错  
   
  代码:  
  TBuf<32>   item;  
  item.Format(KListItemFormat,   _L("Haha"));  
  结果:  
  我在ListBox里显示两个方块  
   
  代码:  
  TBuf<32>   item;  
  item   =   _L("/tHaha/t/t");  
  结果:  
  在ListBox里显示正常  
   
  代码:  
  TBuf<32>   item;  
  item.Format(KListItemFormat,   _L("哈哈"));  
  结果:  
  程序出错  
   
  代码:  
  TBuf<32>   item;  
  item   =   _L("/t哈哈/t/t");  
  结果:  
  在ListBox里显示正常  
   
  由于初次接触Symbian开发,  
  搞不明白为什么,  
  哪位大哥能够指点一下:) 、

 

 %S表示对应参数是Descriptor   的指针。  
  而_L宏只是返回一个Descriptor  
  最好使用一个TBuf或者用_LIT宏,然后取它的地址。  
   
  代码:  
  _LIT(KListItemFormat,   "/t%S/t/t");  
  TBuf<32>   item;  
  _LIT(KHaha,"Ha   ha");  
  item.Format(KListItemFormat,   &KHaha);  

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值