您的位置:首页 > 编程语言 > C语言/C++

第一章C++对C的扩展(Externsion)--(2)输入与输出

2015-11-12 13:43 393 查看

2.输入与输出(cin /cout)

第一个真正意义上的c++程序,c++程序的后缀名为cpp。假设程序名叫xxx则应该写成xxx.cpp。

2.1.cin && cout

cin 和cout 是C++的标准输入流和输出流。他们在头文件iostream中定义。

流名含义隐含设备流名含义隐含设备
cin标准输入键盘cerr标准错误输出屏幕
cout标准输出屏幕clogcerr的缓冲输出屏幕
int main()
{
char name[30];
int age;
cout<<"pls input name and age:"<<endl;
cin>>name;
cin>>age;
// cin>>name>>age;
cout<<"your name is: "<<name<<endl;
cout<<"your age is: "<<age<<endl;
return 0;
}


//string name 安全性对比

//%d%c 的问题

2.2.格式化

c 语言中printf 拥有强大的格式化控制。c++亦可以实现,略复杂。

2.2.1.设置域宽及位数

对于实型,cout默认输出六位有效数据,setprecision(2) 可以设置有效位数,setprecision(n)同setiosflags(ios::fixed)合用,可以设置小数点右边的位数。

#include <iostream>
#include <iomanip>

using namespace std;
int main()
{
printf("%c\n%d\n%f\n",'a',100,120.00);
printf("%5c\n%5d\n%6.2f\n",'a',100,120.00);

cout<<setw(5)<<'a'<<endl<<setw(5)<<100<<endl
<<setprecision(2)<<setiosflags(ios::fixed)<<120.00<<endl;
return 0;
}


2.2.2.按进制输出

输出十进制,十六进制,八进制。默认输出十进制的数据。

int  i = 123;
cout<<i<<endl;
cout<<dec<<i<<endl;
cout<<hex<<i<<endl;
cout<<oct<<i<<endl;
cout<<setbase(16)<<i<<endl;


2.2.3.设置填充符

还可以设置域宽的同时,设置左右对齐及填充字符。

int main()
{
cout<<setw(10)<<1234<<endl;
cout<<setw(10)<<setfill('0')<<1234<<endl;
cout<<setw(10)<<setfill('0')<<setiosflags(ios::left)<<1234<<endl;
cout<<setw(10)<<setfill('-')<<setiosflags(ios::right)<<1234<<endl;
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: