C++中把float类型转换为string类型

本来以为是一个很简单的问题,结果总是会忘记,今天记录一下备查。

方法一

//c++ 将float 类型转换成string 类型:
#include<sstream>

std::string Convert(float Num)
{
    std::ostringstream oss;
    oss<<Num;
    std::string str(oss.str());
    return str;
}

int main(){
    float num = 10.11;
    std::string data = Convert(num);
    printf("data:  %s\n", data.c_str());
    return 0;
}

结果:

data:  10.11

方法二

//c++ 将float 类型转换成string 类型:
#include<sstream>

int main(){
    float num = 10.11;

    std::string data = std::to_string(num);
    printf("data:  %s\n", data.c_str());

    return 0;
}

不过使用这种方法要注意,需要添加对C++11 的支持,如果使用的是CMake,在CMakeLists.txt中加上

add_compile_options(-std=c++11)

如果使用的是qmake,需要添加上

QMAKE_CXXFLAGS += -std=c++11

结果:

data:  10.110000
Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐