zoukankan      html  css  js  c++  java
  • C++使用流进行输入输出

    首先应用

    #include <iostream>
    #include <iomanip>

    1.进制读写

    int val=10;//十进制数
    cout<<"输出8进制"<<oct<<val<<endl;
    cout<<"输出16进制"<<hex<<val<<endl;
    cout<<"输出10进制"<<dec<<val<<endl;

    2.精度

    double pi=3.141592658;
    cout<<setprecision(4);//设置小数精确度,影响以下所有输出
    cout<<pi<<endl;
    //out:3.142
    cout<<fixed<<pi<<endl;//流的定点表示法
    //out:3.1416
    cout<<scientific<<pi;//流的科学表示法
    //out:3.1416e+000

    3.对齐文本和设置字符宽度

    cout<<"abcde"<<endl;
    cout<<setw(10);//设置字段宽度
    cout<<"abcde"<<endl;
    cout<<setw(10)<<setfill('*');//指定填充字符
    cout<<"abcde"<<endl;
    cout<<"abcde"<<endl;
    
    //
    out:
    abcde
         abcde
    *****abcde
    abcde

    4.字符串读写
    (1)使用std::cin::get将输入读取到char数组

    char list[10]={0};
    cin.get(list,3);
    cout<<list<<endl;
    ///
    input:i am a boy
    out:i a

    (2)使用std::cin将输入读取到std::string中

    string list;
    cin>>list;//cin遇到空白后停止插入
    cout<<list;
    getline(cin,list);//确保不跳过空白字符
    cout<<list;
    ///
    input:abcde f
    out:abcde
    input:abcde f
    out:abcde f

    5.文件读写

    #include <fstream>
    //开关
    fstream myfile;
    myfile.open("E:/file.txt",ios_base::in|ios_base::out|ios_base::trunc);//in:可读文件,out:可写入文件,trunc:即使文件存在也重新创建
    myfile.close();
    
    //写入
    ofstream mywfile;
    mywfile.open("E:/file.txt",ios_base::out);//新建文本
    if(mywfile.is_open()){
    mywfile<<"hello";//写入
    mywfile.close();
    }
    
    //读取
    ifstream myrfile;
    myrfile.open("E:/file.txt",ios_base::in);//读取文本
    string filecontents;
    if(myrfile.is_open()){
        while(myrfile.good()){//判定读文件循环的结束
            getline(myrfile,filecontents);
            cout<<filecontents<<endl;
        }
    myrfile.close();
    }
    
    //读写二进制(有问题,待完善,请读者跳过不要看)
    ofstream mywfile;
    mywfile.open("E:/file.bin",ios_base::out|ios_base::binary);//新建文本
    if(mywfile.is_open()){
    mywfile.write(*input,sizeof(input);//写入
    mywfile.read();
    mywfile.close();
    }

    6.使用std::stringstream在整型和字符串间转换

    #include<sstream>
    
    int input=10;
    //整型转为字符串
    stringstream sss;
    sss<<input;//将整型值给了stringstream
    string strinput;
    sss>>strinput;//将stringstream的值给了字符串
    //字符串转为整型
    stringstream iii;
    iii<<strinput;//将字符串值给了stringstream
    int copy=0;
    iii>>copy;////将stringstream的值给了整型
    
    cout<<strinput<<":"<<copy;
    ///out:10:10
  • 相关阅读:
    d3 中exit() remove()正确工作的方式
    理解callback function in javascript
    关于AJAX中函数的执行顺序
    闭包允许内层函数引用父函数中的变量,但是该变量是最终值
    操作系统 庞丽萍 习题九
    关于vector的内存释放问题
    gcc命令中参数c和o混合使用的详解[转载]
    模板函数(template function)出现编译链接错误(link error)之解析
    [转载]config文件的一个很好的实现
    new 等于 malloc加构造函数
  • 原文地址:https://www.cnblogs.com/zychen/p/7384766.html
Copyright © 2011-2022 走看看