RT

解决方案 »

  1.   

    CString str;
    double tmp=11.5;
    str.Format("%f",tmp);
      

  2.   

    我说的是把float类型转化为string类型,而不是转化为CString类型
      

  3.   

    不只楼主怎么会有这个想法,如果楼主的意思是想把float类型中的数据输出来,那么上面的方法是正确的。float类型是不可以转化为string类型的。
      

  4.   

    我的意思是这样的:
    现在我有一个float类型的变量s=123.35,
    现在我要把它变换成一个值为123.35的string对象,
    该如何实现?
      

  5.   

    先用sprintf 把double转换成char [],再把char []转换成string
      

  6.   

    CString str;
    double tmp=11.5;
    str.Format("%f",tmp);
    string s_str=(LPCSTR)str;
      

  7.   

    前面说的方法已经可以将float中的数据转化到CString str对象中了,然后类型转化一下即可啊:string s=(char*)str;
      

  8.   

    用stringstream
    #include <sstream>template <typename T>
    std::string get_format_string(T data)
    {
    std::stringstream ss;
    ss>>data;
    return ss.str();
    }调用地方:
    double dTmp;
    std::string s = get_format_string(dTmp);