CString的Format方法使用技巧总结

  • 在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);

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值