Tips:
1、关于 while(cin >> s)
cin>>a代表获取键盘输入的值赋值给变量a,将cin>>a置于while的循环条件内即while(cin>>a),
将会一直 测试输入流是否正常。
如果输入流正常,就会继续循环获取键盘值,如果输入流错误,或者达到文件末尾(在
windows下Ctrl+Z,在Linux下Ctrl+D),该循环就会终止。
//https://zhidao.baidu.com/question/201042511.html
2、栈,先进后出,常用来模拟一些递归,防止程序对栈内存的限制而导致程序运行出错。
一般程序的栈内存空间很小。
#include <iostream>
#include <stack>
using namespace std;
int main(){
//1.创建string类型的栈,利用其先进后出的特点
string s;
stack<string> st;
while(cin >> s){ //一直输入到文件末尾结束
st.push(s);
}
cout << st.top(); //先输出第一个栈顶元素,之后按照 空格+元素 依次输出,保证最后没有空格
st.pop();
//2.输出
while(!st.empty()){
cout << " " << st.top();
st.pop();
}
return 0;
}