c++类型转换

来源:互联网 发布:mac office 2011 编辑:程序博客网 时间:2024/06/18 03:25
第一种:Defined in header <string>
std::string to_string( int value );


std::string to_string( long value );


std::string to_string( long long value );


std::string to_string( unsigned value );


std::string to_string( unsigned long value );


std::string to_string( unsigned long long value );


std::string to_string( float value );


std::string to_string( double value );


std::string to_string( long double value );


此处是可以把所有类型转换为string类型




第二种stringstream
使用stringstream对象简化类型转换
C++标准库中的<sstream>提供了比ANSI C的<stdio.h>更高级的一些功能,即单纯性、类型安全和可扩展性。在本文中,我将展示怎样使用这些库来实现安全和自动的类型转换
例子一:基本数据类型转换例子 int转string


 


#include <string>
#include <sstream>
#include <iostream> 


int main()
{
    std::stringstream stream;
    std::string result;
    int i = 1000;
    stream << i; //将int输入流
    stream >> result; //从stream中抽取前面插入的int值
    std::cout << result << std::endl; // print the string "1000"



例子二:除了基本类型的转换,也支持char *的转换。


 


#include <sstream>
#include <iostream> 


int main()
{
    std::stringstream stream;
    char result[8] ;
    stream << 8888; //向stream中插入8888
    stream >> result; //抽取stream中的值到result
    std::cout << result << std::endl; // 屏幕显示 "8888"



例子三:再进行多次转换的时候,必须调用stringstream的成员函数clear().


 


#include <sstream>
#include <iostream>
int main()
{
    std::stringstream stream;
    int first, second;
    stream<< "456"; //插入字符串
    stream >> first; //转换成int
    std::cout << first << std::endl;
    stream.clear(); //在进行多次转换前,必须清除stream
    stream << true; //插入bool值
    stream >> second; //提取出int
    std::cout << second << std::endl;

 

0 0
原创粉丝点击