在 C++ 程序中一般用 cout 和输出运算符 << 实现输出,cout 流在内存中有相应的缓冲区。但有时用户还有特殊的输出需求,例如只输出一个字符。
ostream 类除了提供上一节介绍过的用于格式控制的成员函数外,还提供了专门用于输出单个字符的成员函数——put(),它的用法为:
cout.put(ch);
ch 为要输出的字符。
put() 函数的返回值是 cout 的引用,所以你可以像下面这样连续使用 put():
cout.put(ch1).put(ch2).put(ch3);
输出单个字符 a。
cout.put('a');
调用该函数的结果是在屏幕上显示一个字符 a。
put() 函数的参数可以是字符或字符的 ASCII 代码(也可以是一个整型表达式)。
cout.put(65 + 32);
cout.put(97);
上面两行代码都输出字符 a,因为 97 是字符 a 的 ASCII 代码。
可以在一个语句中连续调用 put() 函数,例如:
cout.put(71).put(79).put(79). put(68).put('\n');
在屏幕上显示GOOD。
有一个字符串 “http://www.baidu.com”,要求把它们按相反的顺序输出。
#include <iostream>
#include <string>
using namespace std;int main(){string str = "http://www.baidu.com";for (int i = str.length() - 1; i >= 0; i--) {cout.put(str[i]); //从最后一个字符开始输出}cout.put('\n');return 0;
}
运行结果:
moc.udiad.www//:http
除了使用 cout.put() 函数输出一个字符外,还可以用 putchar() 函数输出一个字符。putchar() 函数是C语言中使用的,在 stdio.h 头文件中定义,C++保留了这个函数,在 iostream 头文件中定义。