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框架,还有没有这样使用起来非常方便的类呢?答案是肯 ...
随机推荐
- Latex常用
插入罗马数字 \newcommand{\RNum}[1]{\uppercase\expandafter{\romannumeral #1\relax}} 然后在正文里面就可以用\RNum{}来添加罗马 ...
- 初次启动hive,解决 ls: cannot access /home/hadoop/spark-2.2.0-bin-hadoop2.6/lib/spark-assembly-*.jar: No such file or directory问题
>>提君博客原创 http://www.cnblogs.com/tijun/ << 刚刚安装好hive,进行第一次启动 提君博客原创 [hadoop@ltt1 bin]$ ...
- day 7-5 生产者消费者模型
一. 生产者和消费者模型 在并发编程中使用生产者和消费者模式能够解决绝大多数并发问题.该模式通过平衡生产线程和消费线程的工作能力来提高程序的整体处理数据的速度. 二. 为什么要使用生产者和消费者模式 ...
- 解决小程序webview缓存机制
在打开webview的时候在地址后面加上随机数或者字符串 并且H5页面使用文件hash
- mysql参数优化记录
服务器参数16G内存,4核CPUvim /etc/my.cnf 原: back_log=170 max_connections=600 max_user_connections=0 thread_co ...
- nginx 卸载后重新安装/etc/nginx配置文件没了,cannot open /etc/nginx/nginx.conf (No such file or directory)
sudo apt-get --purge remove nginx-common sudo apt-get --purge remove nginx* sudo apt-get autoremove ...
- 微信小程序wxml無法實現頁面跳轉的問題
wxml的 navigator的url設置后無法跳轉? 檢查要跳轉的頁面是否是在APP.json的tabBar里註冊過,如果是tabBar頁面是不能用wx.navigateTo和wx.Redirect ...
- web跨域请求
第一种情况: 1. sina.com=====>baidu.com/xxx.jsp 也就是前面的域名不相同,(url第三根斜杠之前的内容,也就是主机) 2:localhost =====> ...
- js 中常用的循环
参考文章: 1.js几种数组遍历方式以及性能分析对比 2.javaScript遍历对象.数组总结 首先是数组中可以使用的 1.for 循环 for (let i = 0; i < xxx.len ...
- Windows 7 quick launch
%AppData%\Microsoft\Internet Explorer\Quick Launch\User Pinned\TaskBar %AppData%\Microsoft\Internet ...