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)

 

 

posted @ 2022-03-06 17:07  博客大王a  阅读(147)  评论(1编辑  收藏  举报