http://www.cnblogs.com/kongtiao/archive/2012/06/13/2548033.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);

  Format是一个很常用,却又似乎很烦的方法,以下是它的完整概貌,以供大家查询之用:

  格式化字符串forma("%d",12)意思是将一个整形的格式化的字符(我认为是保持其形状不变) 
   格式说明总是以%字符开始,以下是不同类型数据的格式方式%号后的说明: 
    d输出带符号十进制数 
    o输出无符号八进制数 
    x输出无符号十六进制数 
    u输出无符号数 
    c输出单个字符 
    s输出一串字符 
    f输出实数(6位小数) 
    e以指数形式输出实数 
    g选用f与e格式中输出宽度较小的格式,不输出0 
    ld输入输出long型数据 
    lf输入输出double型数据 
    m数据输出宽度为m 
    .n输出小数位数为n

MFC中CString.Format的详细用法 - wangkaishou的专栏 - CSDN博客http://blog.csdn.net/wangkaishou/article/details/5846152


最新文章

  1. CSS中强悍的相对单位之em(em-and-elastic-layouts)学习小记
  2. MySQL查询语句(select)详解(1)
  3. PHP获取当前时间戳,当前时间、及解决时区问题
  4. CDN(翻译)
  5. 在线开发工具helper
  6. nginx的初步了解
  7. php课程---文件操作及文件上传的代码总结
  8. 20145224&20145238《信息安全系统设计基础》实验一 开发环境的熟悉
  9. [Effective JavaScript 笔记]第31条:使用Object.getPrototypeOf函数而不要使用__proto__属性
  10. HD1085 Holding Bin-Laden Captive!
  11. chromium安装flash
  12. poj1740 A New Stone Game
  13. oracle db_unnqiue_name db_name sid_name instance_name service_name
  14. uva 10054 The Necklace(欧拉回路)
  15. [js高手之路] es6系列教程 - 不定参数与展开运算符(...)
  16. NYOJ--284--广搜+优先队列--坦克大战
  17. testbench中$display查看例化model里面信号方法以及$realtime用法
  18. .NET Core 学习笔记2——管理nuget包
  19. bat路径中有空格
  20. WinHTTrack Website Copier使用说明

热门文章

  1. Visual studio之C# 利用Settings保存COM口配置信息
  2. Docker技术-cgroup
  3. JavaScript中使用JSON,即JS操作JSON总结
  4. scrapy抓取的中文结果乱码解决办法
  5. Mysql暴错注入代码-webshell
  6. 面试、笔试中常用的SQL语句(数据库知识必杀)一共50个!!!
  7. FPGA大公司面试笔试数电部分,看看你会多少
  8. [k8s]k8s架构图解
  9. 无语的Filezilla
  10. Jquery学习笔记(11)--jquery的ajax删除用户,非常简单!