string的基本用法
#include <iostream>
#include<string>
#include<vector>
#include<algorithm>
using namespace std; int main(int argc, char** argv) {
string s;
char ss[];
//scanf的输入速度比cin快得多
//scanf是c语言的函数,不支持string对象
scanf("%s",&ss);
//把整个字符数组赋值给string对象
s=ss;
cout<<s<<endl;
//输出字符对象
s=s+'a'; //在string对象尾部添加一个a
s=s+"";
s.append(""); //与+具有相同的功能
s="";
string::iterator it;
it=s.begin();
s.insert(it+,'p'); //把p插入到第一个字符前
cout<<s<<endl;
cout<<s[]<<endl; //可用下标来访问string对象的元素
s.erase(it,it+); //删除0~4区间的所有元素
s=""; //清空字符串
s="abc123456";
//从第3个开始,将连续的3个字符替换为"good"
//即将"123"替换为"good"
s.replace(,,"good");
cout<<s<<endl;
s="cat dog cat";
//查找第一个字符为'c',返回下标值
cout<<s.find('c')<<endl;
//查找第一个子串为"c",返回下标值
cout<<s.find("c")<<endl;
//s与"cat"字符串比较,大返回1,等于返回0,小于返回-1
cout<<s.compare("cat")<<endl;
//将字符串s反向排序
reverse(s.begin(),s.end());
cout<<s<<endl;
//string对象可以作为vector向量的元素,类似于字符串数组
vector<string> v;
v.push_back("Jack");
v.push_back("Mike");
v.push_back("Tom");
cout<<v[]<<endl;
cout<<v[]<<endl;
cout<<v[]<<endl;
cout<<v[][]<<endl;
cout<<v[][]<<endl;
cout<<v[].length()<<endl;
//string类型的数字化处理
s="";
int i;
int sum=;
for(i=;i<s.length();i++)
{
if(s[i]=='')sum+=;
else if(s[i]=='') sum+=;
else if(s[i]=='') sum+=;
else if(s[i]=='') sum+=;
else if(s[i]=='') sum+=;
else if(s[i]=='') sum+=;
else if(s[i]=='') sum+=;
else if(s[i]=='') sum+=;
else if(s[i]=='') sum+=;
else if(s[i]=='') sum+=;
}
cout<<sum<<endl;
char sss[];
//输入字符串到字符数组中
scanf("%s",&sss);
//字符数组赋值给字符串对象
s=sss;
//用printf输出字符串对象,要采用c_str()方法
printf(s.c_str()); //cout<<s<<endl; 用cout输出字符串对象
cout<<endl;
//用printf输出字符数组
printf("%s",sss); //cout<<sss<<endl; 用cout输出字符数组
cout<<endl;
//sscanf把一个字符串按你的需要的方式分离出子串
string s1,s2,s3;
char sa[],sb[],sc[];
//把字符串分成子串,分隔符为空格
sscanf("abc 123 pc","%s %s %s",sa,sb,sc);
s1=sa;
s2=sb;
s3=sc;
cout<<s1<<" "<<s2<<" "<<s3<<endl;
//用字符串分离成数字,分隔符为空格
//当用到数字的时候,和scanf一样,它要传地址
int a,b,c;
sscanf("1 2 3","%d %d %d",&a,&b,&c);
cout<<a<<" "<<b<<" "<<c<<endl;
//将字符串分离成数字,分隔符为“,”和“$”
//当用到数字的时候,跟 scanf 一样,它要传指针地址
int x,y,z;
sscanf("4,5$6","%d,%d$%d",&x,&y,&z);
cout<<x<<" "<<y<<" "<<z<<endl;
return ;
}
string的基本用法的更多相关文章
- 标准C++中的string类的用法总结
标准C++中的string类的用法总结 相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有 ...
- sstream头文件-getline 函数 和 stringstream函数 和string的常见用法
2017-08-12 19:50:50 writer:pprp getline函数可以读入一行的字符,不论有没有空格 第一个参数,流 第二个参数 ,将流读入的地方 第三个参数,当读到某个字符的时候停止 ...
- 详解 SWT 中的 Browser.setUrl(String url, String postData, String[] headers) 的用法
http://hi.baidu.com/matrix286/item/b9e88b28b90707c9ddf69a6e ———————————————————————————————————————— ...
- String的高级用法(String.Format)
string.Format C#的String.Format的一般地我们可以直接使用string.format()或int.ToString()和float.ToString() 下面是一些Strin ...
- VC++ 标准C++中的string类的用法总结
相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯 ...
- [C++][语言语法]标准C++中的string类的用法总结
转自:http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html 要想使用标准C++中string类,必须要包含 #include ...
- JavaScript学习总结一(String对象的用法)
javascript String对象的常用API 1:indexOf indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置.如果没有找到匹配的字符串则返回 -1.注意: inde ...
- 标准C++中string类的用法
转自博客园:http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html 相信使用过MFC编程的朋友对CString这个类的印象应该非 ...
- 标准C++中的string类的用法总结(转)
http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html 相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的 ...
- 【C++】C++中的string类的用法总结
相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯 ...
随机推荐
- java代理:静态代理和动态代理
一.Java中有一个设计模式是代理模式 代理模式是常用的Java设计模式,特征是代理类与委托类有相同的接口,代理类主要负责为委托类预处理消息.过滤消息.把消息转发给委托类,以及事后处理消息等. 代理类 ...
- AngularJS基于模块化的MVC实现
AngularJS基于模块化的MVC实现 <!DOCTYPE html> <html> <head> <meta charset="UTF-8&qu ...
- js中style,currentStyle和getComputedStyle的区别以及获取css样式操作方法
用js的style只能获取元素的内联样式,内部样式和外部样式使用style是获取不到的. currentStyle可以弥补style的不足(可获取内联样式,内部样式和外部样式),但是只适用于IE. g ...
- Chrome---谷歌浏览器修改用户缓存文件夹 如何设置缓存路径
1.首先我们在电脑上打开chrome浏览器,然后地址栏输入chrome://Version,然后按下回车键,找到个人资料路径一项. 2.接下来我们选中个人资料路径后面所有的信息,右键点击信息后选择“复 ...
- mysql 如何查看sql语句执行时间和效率
查看执行时间 1 show profiles; 2 show variables;查看profiling 是否是on状态: 3 如果是off,则 set profiling = 1: 4 执行自己的s ...
- ArcGIS 添加 MarkerSymbol 弹出“图形符号无法序列化为 JSON”错误
今天在做一个demo,向自定义图层中添加MarkerSymbol的时候,弹出“图形符号无法序列化为 JSON”错误,之前都没有出现过这个问题,我们首先来看一看我是怎样去添加图层,然后向图层中添加Gra ...
- CSS3圆角详解(border-radius)
1.CSS3圆角的优点 传统的圆角生成方案,必须使用多张图片作为背景图案.CSS3的出现,使得我们再也不必浪费时间去制作这些图片了,而且还有其他多个优点: 减少维护的工作量.图片文件的生成.更新.编写 ...
- python设计模式第二十五天【访问者模式】
1.应用场景 (1)将数据和行为进行分离,不同的角色具有不同的行为 2.代码实现
- PHP爬虫框架Beanbun使用
第一 下载安装Beanbun框架 例如: mkdir -p BeanbunTest composer require kiddyu/beanbun 如图所示: 第二 简单下载网页的例子 <?ph ...
- python之读取和写入csv文件
写入csv文件源码: #输出数据写入CSV文件 import csv data = [ ("Mike", "male", 24), ("Lee&quo ...