STL之stack
2020-04-07 16:00:27来源:博客园 阅读 ()
STL之stack
stack即栈,一种先进后出的数据结构。
这次会在stack的基础上讲两个实际应用,以及讲一下stringstream。
直接上代码!
1、stack基础
#include<iostream> #include<stack> using namespace std; int main() { //构造 stack<int> s; //一般空参构造 //入栈 s.push(2); s.push(6); s.push(8); cout << s.size() << endl; //size:3 //stack不能遍历,只能一个一个退栈 while (!s.empty()) { //输出8 6 2 先进后出 cout << s.top() << ' '; //取栈顶,不会退栈 s.pop(); //退栈,无返回值 } cout << endl << s.size() << endl; //size:0 return 0; }
2、进制转换
#include<iostream> #include<stack> using namespace std; int main() { //进制转换10->2 stack<int> s; int n; cin >> n; while (n) { s.push(n % 2); n /= 2; } while (!s.empty()) { n = n * 10 + s.top(); s.pop(); } cout << n << endl; return 0; }
3、以空格分割的字符串逆序输出
#include<iostream> #include<stack> #include<string> #include<sstream> using namespace std; int main() { //以空格分割的字符串逆序输出 string str; stack<string> s; getline(cin, str); //输入一行字符串 stringstream ss; //stringstream常用于string类型转其他类型和切分以空格分割的字符串,头文件<sstream> ss << str; while (ss >> str) s.push(str); while (!s.empty()) { cout << s.top(); s.pop(); if (s.size() != 0) cout << ' '; } cout << endl; return 0; }
4、string类型转换
#include<iostream> #include<stack> #include<string> #include<sstream> using namespace std; int main() { //字符串转int/double,使用stringstream int intVal; double douVal; stringstream ss; string str1 = "268"; string str2 = "268.369"; ss << str1; ss >> intVal; ss.clear(); //一定要clear ss << str2; ss >> douVal; cout << double(intVal + douVal) << endl; //字符串类型与int类型之间的转换,使用函数 int n = stoi(str1); cout << 2 * n << endl; string str3 = to_string(n); cout << str1 + str3 << endl; return 0; }
原文链接:https://www.cnblogs.com/love-ziji/p/12641534.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:用C++实现:Sine之舞
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash