CString的Format方法使用技巧小结.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
CString的Format方法使用技巧小结

CString的Format方法使用技巧小结 在VC中经常用到Format()来输出一个特定类型的变量到窗口上,该函数使用起来比较方便,但是如果对其函数中的参数不很熟悉的话用起来也是比较麻烦的。因此,归纳了一下,以供大家查询之用: 1).格式说明 格式说明总是以%字符开始,以不同类型数据的格式方式%号: %d输出带符号十进制数 %o输出无符号八进制数 %x输出无符号十六进制数 %u输出无符号数 %c输出单个字符 %s输出一串字符 %f输出实数(6位小数) %e以指数形式输出实数 %g选用f与e格式中输出宽度较小的格式,不输出0 %ld输入输出long型数据 %lf输入输出double型数据 m.n中,m为数据输出宽度,n为输出小数位数 比如常见的int、float和double这些数字类型转换为CString字符串只需一行代码就可以实现。 1、int转换为CString: CString str; int number=15; //str=15 str.Format(_T(%d),number); //str= 15(前面有两个空格;4表示将占用4位,如果数字超过4位将输出所有数字,不会截断) str.Format(_T(%4d),number); //str=0015(.4表示将占用4位,如果数字超过4位将输出所有数字,不会截断) str.Format(_T(%.4d),number); long转换为CString的方法与上面相似,只需要把%d改为%ld就可以了。 2、double转换为CString: CString str; double num=1.46; //str=1.46 str.Format(_T(%lf),num); //str=1.5(.1表示小数点后留1位,小数点后超过1位则四舍五入) str.Format(_T(%.1lf),num); //str=1.4600 str.Format(_T(%.4f),num); //str= 1.4600(前面有1个空格) str.Format(_T(%7.4f),num); float转换为CString的方法也同上面相似,将lf%改为f%就可以了。 3、将十进制数转换为八进制: CString str; int num=255; //str=377 str.Format(_T(%o),num); //strstr.Format(_T(%.8o),num); 4、double转换为CString补充:也可以使用下面的函数去转换,位数控制比较简单。在使用时需要包含#include COMDEF.H头文件。 void FormatDouble(double dblValue,CString sOut) { _variant_t var(dblValue); BSTR bstrOut = sOut.AllocSysString(); ::VarFormat(var, L0.#############, 0, 0, VAR_FORMAT_NOSUBSTITUTE, bstrOut); sOut = bstrOut; ::SysFreeString(bstrOut); } 一 Cstring 1.初始化方法: (1)直接复制,如Cstring=”mingrisoft”; (2)通过构造函数初始化,如 CString str(‘ ’,100)//与分配100个字节,填充空格 char* p=”feiqiang”; Cstring(p);delete p. (3)加载工程中的字符串资源,如CString str;str.LoadString(IDS_STR); (4)使用CString类的成员函数Format初始化,如CString str; int i=0; str.Format(“value:%d”,i); 2.将CString转化为char*,如 CString str=”feqiang”; char *p; p=str.GetBuffer(); delete p; 将char*转化为CString,如: char* p=”feiqiang”; p[len(p)]=’\0’; Cstring str(p); char* 和char数组的转化: char buf[5] ={‘a’,’b’,’c’}; char *p; p=new char[5]; p=buf; 将字符串转化为数字: CString str=”12”; int i=atoi(str); long j=atoll(s

文档评论(0)

xcs88858 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档