正文

CString的Format方法使用技巧总结2010-06-19 10:34:00

【评论】 【打印】 【字体: 】 本文链接:http://blog.pfan.cn/lym51/51374.html

分享到:

CString的Format方法使用技巧总结(int|float|double转换为 CString)

版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明
http://flyxxtt.blogbus.com/logs/44052998.html

      在MFC程序中,使用CString来处理字符串是一个很不错的选择。CString 既可以处理Unicode标准的字符串,也可以处理ANSI标准的字符串CString的Format方法给 我们进行字符串的转换带来了很大的方便,比如常见的int、float和double这些数字类型转 换为CString字符串只需一行代码就可以实现。

      先看看Format用于转换的格式字符

       %c                 单个字符
       %d                 十进制整数(int)
       %ld                十进制整数(long)
       %f                 十进制浮点数(float)
       %lf                十进制浮点数(double)
       %o                 八进制数
       %s                 字符串
       %u                 无符号十进制数
       %x                 十六进制数

 

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);
//str="00000377"
str.Format(_T("%.8o"),num);

阅读(1522) | 评论(0)


版权声明:编程爱好者网站为此博客服务提供商,如本文牵涉到版权问题,编程爱好者网站不承担相关责任,如有版权问题请直接与本文作者联系解决。谢谢!

评论

暂无评论
您需要登录后才能评论,请 登录 或者 注册