stringstream、tolower()、isalnum()的用法
一、c++ stringstream的用法
C++引入了ostringstream、istringstream、stringstream这三个类,要使用他们创建对象就必须包含<sstream>这个头文件。
1、可以用于分割被空格、制表符等符号分割的字符串
例如下面这个例子:
#include<iostream> #include<sstream> //istringstream 必须包含这个头文件 #include<string> using namespace std; int main(){ string str="i am a boy"; stringstream is(str); string s; while(is>>s) { cout<<s<<endl; } }
输出的结果为:
i
am
a
boy
str被以空格分割为四个字符串,这四个字符串可以用动态数组来储存。
#include<iostream> #include<sstream> //istringstream 必须包含这个头文件 #include<string> #include<vector> using namespace std; int main(){ vector<string>v; //创建一个存string类型的动态数组 string str="i am a boy"; stringstream is(str); while(is>>str) { v.push_back(str);//将字符串按空格分割并存入v中 } for(int i=0;i<v.size();i++) { cout<<v[i]<<endl; //v[0]存入i,v[1]存入am,v[1][0]是‘a’ } }
结果与上面的结果一样。
参考链接:istringstream、ostringstream、stringstream 类介绍 .
二、tolower()函数
tolower()是一种函数,功能是把字母字符转换成小写,非字母字符不做出处理。如果有相对应的小写字母,则该函数返回的小写字母,否则保持不变。
参考链接:C 库函数 – tolower() | 菜鸟教程 (runoob.com)
三、isalnum()函数
isalnum() 函数用来检测一个字符是否是字母或者十进制数字。是返回真,否则返回假。
参考链接:isalnum()_C语言isalnum()详解:判断一个字符是否是字母或数字 (biancheng.net)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了