学习C++:输入输出流cout与cin

1.重要的C++流类和流对象

std命名空间中常用的C++流类
cout 标准输出流
cin 标准输入流
cerr 用于显示错误的标准输出流
fstream 用于操作文件的输入和输出流,继承了ofstream和ifstream
ofstream 用于操作文件的输出流类,即用于创建文件
ifstream 用于操作文件的输入流类,即用于读取文件
stringstream 用于字符串的输入和输出流类,继承了istringstream和ostringstream,通常用于在字符串和其他类型之间进行转换

std命名空间中常用于流的控制符
endl 插入一个换行符
ends 插入一个空字符
dec 让流以十进制输入或者输出
hex 十六进制
oct 八进制
fixed 以定点表示法显示数据
scientific 以科学表示法显示数据
setprecision 设置小数精度
setw 设置字段宽度
setfill 设置填充字符

2.cout的常见用法

使用cout和控制符以十进制、十六进制和八进制格式显示整数:

#include <iostream>
#include <iomainp>
using namespace std;

int main()
{
	cout<<"输入一个整数:"int Input = 0;
	cin>>Input;
	cout<<"八进制显示:"<<oct<<Input<<endl;
	cout<<"十六进制显示:"<<hex<<Input<<endl;
	
	const double Pi=(double)22.0/7;
	cout<<setprecision(7);//设置小数精度为7
	cout<<"Pi="<<Pi<<endl;
	cout<<fixed<<"Fixed Pi="<<Pi<<endl;
	cout<<scientific<<"Scientific Pi="<<Pi<<endl; //科学计数法表示
	return 0;
}

下面演示使用控制符setw()设置字段宽度,并使用setfill()指定填充字符:

#include <iostream>
#include <iomanip>
using namespace std;

int main()
{
	cout<<"Hello C++"<<endl;
	cout<<setw(20); //20个空格
	cout<<"Hello C++";
	cout<<setw(20)<<setfill('*'); //20个空格,并用符号*填充
	cout<<"Hello C++"<<endl;
	return 0;
}

3.使用cin进行输入

使用cin能将输入读取到基本类型变量中,还可以使用getline()从键盘读取一行输入。下面程序演示了cin作为标准输入流的4种常用用法:

#include <iostream>
using namespace std;

int main()
{
 //1.使用cin将输入读取到int、double和char变量中
  cout<<"输入一个整数:";
  int Input=0;
  cin>>Input;
  cout<<"依次输入三个字符:"<<endl;
  char char1='\0', char2='\0', char3='\0';
  cin>>char1>>char2>>char3;
 //2.使用cin.get()将输入读取到char数组中(不推荐使用)
  char charArray[10]={0};
  cout<<"输入一个字符串: ";
  cin.get(charArray, 9);  //只将输入字符串的前9个字符读取到charArray
  cout<<"charArray: "<<charArray<<endl;
 //3.使用cin将输入读取到string中(推荐使用,避免了考虑字符数组存不存的下的问题)
  cout<<"输入你的名字:";
  string Name;
  cin>>Name;  //注意:输入一旦遇到空白(空格)后停止插入
  cout<<"Hello "<<Name<<endl;
 //4.使用getline()和cin读取整行输入
  cout<<"输入你的名字:";
  string Name;
  getline(cin, Name);  //使用getline()可以确保不跳过空白字符,输出整行
  cout<<"Hello "<<Name<<endl;
  return 0;
}
发布了12 篇原创文章 · 获赞 13 · 访问量 614

猜你喜欢

转载自blog.csdn.net/wjinjie/article/details/104301129