#define _CRT_SECURE_NO_WARNINGS 1
#include <iostream>
#include <stack>
using namespace std;
//Stack栈容器:容器适配器,遵循先进后出(FILO)数据结构
//empty:判断堆栈元素是否为空,true表示栈元素为空;
//pop:移除栈顶元素;
//push:栈顶添加元素;
//top:返回栈顶元素;
//size:返回栈中元素数目;
void test01()
{
stack<string> ss;
string s;
while (cin >> s) { ss.push(s); }
//测试输入流是否正常,如果输入正常,就会继续循环获取键盘上的值
//测试的输入流如果不正常,或者达到文件末尾、字符串末尾(在windows下Ctrl+Z,在Linux下Ctrl+D),该循环就会终止
//循环向站内压进多个string类的字符串, 每隔string类的字符串为一个元素
while (!ss.empty())
{
cout << ss.top(); //输出栈顶元素
ss.pop(); //弹出栈顶元素
if (!ss.empty()) cout << ' ';
//真, 因为栈内的每个元素都连在一起,弹出一个元素后,输出一个空格
}
cout << endl;
}
int main()
{
//题目是要我们输入一个只包含英文和空格和英文的字符串,然后输出其反序
//实例:
//输入:I am a boy
//输出:boy a am I
test01();
return 0;
}
【C++】stack容器的用法解析
最新推荐文章于 2022-10-30 13:32:25 发布