C++IO流(1)

简介: C++IO流(1)

@TOC

C++IO流

C++流

流就是若干字节组成字节序列,流操作就是从一个移动到另一个的过程。

流中的内容:二进制数据ASCII码

流类体系

C++中用类实现所有流类操作

1.标准的输入输出流

2.字符流

3.文件流

标准的输出输入流

对象 类型 作用

cin 标准输入 从键盘读取,可以重定向

cout 标准输出 输出到控制台,可以重定向

cerr 标准错误输出 输出到控制台,不可以重定向

clog 标准错误输出 输出到控制台,可重定向

重定向:可以改变函数,使得函数变成另外一个 功能。

include<iostream>
using namespace std;
int main()
{
  cout << "标准的输入输出" << endl;
  cerr << "错误的输入输出" << endl;
  clog << "错误的输入输出" << endl;
  system("pause");
  return 0;
}

字符和字符串的输入和输出

cin成员函数

1.get()输入一个字符

2.getline()输入一个字符串

cout成员函数

put():输出一个字符

write():输出一个字符串

#include<iostream>
using namespace std;
int main()
{
  int number = cin.get();
  cout.put(number);
  char arr1[10];
  while (getchar() != '\n');
  {
    cin.getline(arr1, 10);
  }
  cout << arr1;
  system("pause");
  return 0;
}

C++格式控制

1.包含头文件:iomanip

2.有两种方法:通过对象形式,通过成员函数的形式

对象形式      实际意义
1.setbase(n)    设置多少进制输出整数(参数是8和16)
2.setw(n)     设置输出数据宽度(默认对齐是右对齐,不足补空格)
3.setiosflags(ios::left)  设置对齐方式左对齐(ios::left),右对齐(ios::right)
4.setprecision(n)   单纯使用是控制有效位数,如果控制小数位数,结合fixed使用。
5.setfill(n)      填充字符
#include<iostream>
#include<iomanip>
using namespace std;
int main()
{
  cout << setbase(16) << 32 << endl;
  cout << setbase(8) << 32 << endl;
  cout << setw(10) << "姓名" << setw(10) << "学号" << endl;
  cout << setiosflags(ios::left);
  cout << setw(10) << "姓名" << setw(10) << "学号" << endl;
  cout << setprecision(4) << 5.222229 << endl;  // 保留4位有效数字
  cout << fixed << setprecision(2) << 5.2222229 << endl; //保留2位小数
  cout << setiosflags(ios::scientific) << 92.2222 << endl;  //科学计数法
  system("pause");
  return 0;
}

当然也可以用做成员函数的方法去用

#include<iostream>
using namespace std;
int main()
{
  cout.precision(4);
  cout << 6.22 << endl;
  cout.width(9);
  cout << "姓名";
  cout.width(9);
  cout << "学号";
  system("pause");
  return 0;
}

相关文章
|
1月前
|
网络协议 安全 Linux
Linux C/C++之IO多路复用(select)
这篇文章主要介绍了TCP的三次握手和四次挥手过程,TCP与UDP的区别,以及如何使用select函数实现IO多路复用,包括服务器监听多个客户端连接和简单聊天室场景的应用示例。
89 0
|
1月前
|
存储 Linux C语言
Linux C/C++之IO多路复用(aio)
这篇文章介绍了Linux中IO多路复用技术epoll和异步IO技术aio的区别、执行过程、编程模型以及具体的编程实现方式。
75 1
Linux C/C++之IO多路复用(aio)
|
5月前
|
C++
C++的简单文本文件IO
C++的简单文本文件IO
|
1月前
|
Linux C++
Linux C/C++之IO多路复用(poll,epoll)
这篇文章详细介绍了Linux下C/C++编程中IO多路复用的两种机制:poll和epoll,包括它们的比较、编程模型、函数原型以及如何使用这些机制实现服务器端和客户端之间的多个连接。
23 0
Linux C/C++之IO多路复用(poll,epoll)
|
6月前
|
算法 C语言 C++
【C++】C++的IO流
【C++】C++的IO流
|
6月前
|
存储 算法 C语言
【C++入门到精通】C++的IO流(输入输出流) [ C++入门 ]
【C++入门到精通】C++的IO流(输入输出流) [ C++入门 ]
117 0
|
3月前
|
算法 C语言 C++
【C++航海王:追寻罗杰的编程之路】C++的IO流
【C++航海王:追寻罗杰的编程之路】C++的IO流
33 2
|
5月前
|
Linux C++
c++高级篇(三) ——Linux下IO多路复用之poll模型
c++高级篇(三) ——Linux下IO多路复用之poll模型
|
5月前
|
缓存 监控 网络协议
c++高级篇(二) ——Linux下IO多路复用之select模型
c++高级篇(二) ——Linux下IO多路复用之select模型
|
6月前
|
存储 算法 C语言
从C语言到C++_38(C++的IO流+空间适配器)STL六大组件联系(下)
从C语言到C++_38(C++的IO流+空间适配器)STL六大组件联系
59 5