分享

CString.format用法

 浮 生 2008-11-20

format指定输出格式,后面跟要输出的变量  
    目前printf支持以下格式:  
       %c                 单个字符  
       %d                 十进制整数  
       %f                 十进制浮点数  
       %o                 八进制数  
       %s                 字符串  
       %u                 无符号十进制数  
       %x                 十六进制数  
       %%                 输出百分号%  
 一个格式说明可以带有几个修饰符,用来指定显示宽度,小数尾数及左对齐等:  
       -                   左对齐  
       +                   在一个带符号数前加'+'或'-'号  
       0                   域宽用前导零来填充,而不是用空白符  
    域宽是一个整数,设置了打印一个格式化字符串的最小域。精度使用小数点后加数字表示的,给出每个转换说明符所要输出的字符个数。  
    注意:带修饰符的显示可能不正常。 

    数据格式说明由“%”开头,形式为   %<数据输出宽度说明><格式符>,数据格式说明用在需要输出变量或运算数值结果的时候,它的个数与输出表列的个数一一对应。  
   
     数据宽度说明中如果实际数据小于宽度,则根据宽度是否大于零而左补空格或右补空格。如果实际数据大于宽度,按实际位数输出。如果缺省宽度说明,则按实际宽度输出。  

  CString.format('%10f', a);  
  10表示把a以10个字符宽度格式化  
  %f形式输出,则小数部分为6位;  
  例  
  %10f   若a的整数部分位数+小数点(1位)+小数部分位数大于等于10,则按实际a的形式格式化; 
         若a的整数部分位数+小数点(1位)+小数部分位数小于10,则在前面补空格,补足10位; 
  例  
  %.7f   则  
        a的小数部分位数若大于7,则截取7位小数,整数部分不变; 
        a的小数部分位数若小于等于7,则不满7位的部分后面以0补足; 
   
  str.Format(_T('Left-justified integer: %.6d\n'), b);  
  %.6d  
  若整数b不满6位则在最高为前面补0;
  若整数b大于等于6位则形式不变;
   
  %6d  
  若整数b不满6位,则在最高位前面补上空格,是之格式化为6个字符宽度; 
  若整数b大于等于6位则形式不变。

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多