C++输入和输出
1. “流stream”的概念
输入和输出并不是C++语言中的正式组成成分。C 和C++本身都没有为输入和输出提供专门的语句结构。输入输出不是由C++本身定义的,而是在 的I/O库中定义的。
C++的输出和输入是用“流”(stream)的方式实现,即调用输入输出流库中的流对象cin和cout。 “流”指的是来自设备或传给设备的一个数据流。数据流由一系列字节组成,这些字节按进入流的顺序排列。
2. 输入与输出操作
(1)输入语句:cin >> a; (“>>”流提取运算符, 从输入流中提取若干字节到计算机内存区指定的变量)
系统会根据变量类型从输入流中提取相应长度的字节。
空格字符和回车换行字符不能作为字符输入,会被系统当成数据间的分隔符跳过。
(2)输出语句:cout << a << endl; (“<<”流插入运算符,将输出内容插入到输出流中,输出到默认的设备)
系统会自动判别输出数据的类型。不能插入多个输出项。
定义流对象时,会开辟一个缓冲区,用来暂存输入输出流的数据。
执行cout语句时,插入的数据先顺序存放在输出缓冲区里,直到缓冲区满了或遇到endl(‘\n’,ends,flush)为止,此时再 把缓冲区里的数据一起输出,并清空缓冲区。
3.标准输入输出流的控制符
要使用控制符,需要引入iomanip头文件。
setw(n)只对其后一个输出有效
实现右对齐:使用相同的setw(n) 和 setiosflags(ios::right)
实现小数点对齐:加上setiosflags(ios::fixed)、setprecision(n)
4.getchar 和 putchar (字符输入输出函数)
putchar函数:向终端输出一个字符。putchar(‘\n’) ,putchar(‘\101’)
getchar函数:从终端输入一个字符。无参数 getchar()
getchar可以赋给字符变量和整型变量,由于他们是函数,也可以直接嵌在表示式里。
5 .scanf 和 printf
scanf(格式控制,输出列表) scanf(”%d %c %f“,&a,&b,&c);
printf(格式控制,输出列表) printf(”a =%d ,b =%c ,c= %f“,a,b,c);