C++学习笔记

写一点笔记,C++

fflush(stdin) 可用于清空输入缓冲区
stringstream 可以简化类对象之间的转化

stringstream .str().c_str()可以返回C类型的字符串

#include <sstream>
#include <iostream>

using namespace std;
int main()
{
    std::stringstream stream;
    std::string result;

    //将整型数据转换为string
    int i = 100;
    stream << i;
    stream >> result;
    std::cout << result << std::endl;

    stream.clear();//再次使用时需要调用clear方法,重置了流的状态标志

    string result_2;
    stream << 8888;
    stream >> result;
    std::cout << result << std::endl;

    stream.str("");//清空流内容,clear()方法不会清空流内容

    string result_1 = "world ";
    stream.clear();
    stream << "hello "<<result_1 << 100;
    result_1 = stream.str();//返回流内储存的string类型对象
    std::cout << result_1 << std::endl;
}

程序结果如下:

ANSI标准说明了五个预定义的宏名:


__LINE__ 源文件的文件名;
__FILE__ 该行代码的所在行号;
__DATE__ 含有形式为月/日/年的串,表示源文件被翻译到代码时的日期;
__TIME__ 含有形式为时/分/秒的串,源代码翻译到目标代码的时间作为串;
__STDC__ 如果实现是标准的,则含有十进制常量1。


boost::lexical_cast为数值之间的转换提供了良好的解决方案,可实现任意类型向数值(int, double…)的转化,当转换失败是抛出bad_lexical_cast异常。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值