string的基本用法
1 #include <iostream> 2 #include<string> 3 #include<vector> 4 #include<algorithm> 5 using namespace std; 6 7 8 int main(int argc, char** argv) { 9 string s; 10 char ss[5000]; 11 //scanf的输入速度比cin快得多 12 //scanf是c语言的函数,不支持string对象 13 scanf("%s",&ss); 14 //把整个字符数组赋值给string对象 15 s=ss; 16 cout<<s<<endl; 17 //输出字符对象 18 s=s+'a'; //在string对象尾部添加一个a 19 s=s+"123"; 20 s.append("123"); //与+具有相同的功能 21 s="123456"; 22 string::iterator it; 23 it=s.begin(); 24 s.insert(it+1,'p'); //把p插入到第一个字符前 25 cout<<s<<endl; 26 cout<<s[0]<<endl; //可用下标来访问string对象的元素 27 s.erase(it,it+4); //删除0~4区间的所有元素 28 s=""; //清空字符串 29 s="abc123456"; 30 //从第3个开始,将连续的3个字符替换为"good" 31 //即将"123"替换为"good" 32 s.replace(3,3,"good"); 33 cout<<s<<endl; 34 s="cat dog cat"; 35 //查找第一个字符为'c',返回下标值 36 cout<<s.find('c')<<endl; 37 //查找第一个子串为"c",返回下标值 38 cout<<s.find("c")<<endl; 39 //s与"cat"字符串比较,大返回1,等于返回0,小于返回-1 40 cout<<s.compare("cat")<<endl; 41 //将字符串s反向排序 42 reverse(s.begin(),s.end()); 43 cout<<s<<endl; 44 //string对象可以作为vector向量的元素,类似于字符串数组 45 vector<string> v; 46 v.push_back("Jack"); 47 v.push_back("Mike"); 48 v.push_back("Tom"); 49 cout<<v[0]<<endl; 50 cout<<v[1]<<endl; 51 cout<<v[2]<<endl; 52 cout<<v[0][0]<<endl; 53 cout<<v[1][0]<<endl; 54 cout<<v[2].length()<<endl; 55 //string类型的数字化处理 56 s="1234059"; 57 int i; 58 int sum=0; 59 for(i=0;i<s.length();i++) 60 { 61 if(s[i]=='0')sum+=0; 62 else if(s[i]=='1') sum+=1; 63 else if(s[i]=='2') sum+=2; 64 else if(s[i]=='3') sum+=3; 65 else if(s[i]=='4') sum+=4; 66 else if(s[i]=='5') sum+=5; 67 else if(s[i]=='6') sum+=6; 68 else if(s[i]=='7') sum+=7; 69 else if(s[i]=='8') sum+=8; 70 else if(s[i]=='9') sum+=9; 71 } 72 cout<<sum<<endl; 73 char sss[100]; 74 //输入字符串到字符数组中 75 scanf("%s",&sss); 76 //字符数组赋值给字符串对象 77 s=sss; 78 //用printf输出字符串对象,要采用c_str()方法 79 printf(s.c_str()); //cout<<s<<endl; 用cout输出字符串对象 80 cout<<endl; 81 //用printf输出字符数组 82 printf("%s",sss); //cout<<sss<<endl; 用cout输出字符数组 83 cout<<endl; 84 //sscanf把一个字符串按你的需要的方式分离出子串 85 string s1,s2,s3; 86 char sa[100],sb[100],sc[100]; 87 //把字符串分成子串,分隔符为空格 88 sscanf("abc 123 pc","%s %s %s",sa,sb,sc); 89 s1=sa; 90 s2=sb; 91 s3=sc; 92 cout<<s1<<" "<<s2<<" "<<s3<<endl; 93 //用字符串分离成数字,分隔符为空格 94 //当用到数字的时候,和scanf一样,它要传地址 95 int a,b,c; 96 sscanf("1 2 3","%d %d %d",&a,&b,&c); 97 cout<<a<<" "<<b<<" "<<c<<endl; 98 //将字符串分离成数字,分隔符为“,”和“$” 99 //当用到数字的时候,跟 scanf 一样,它要传指针地址 100 int x,y,z; 101 sscanf("4,5$6","%d,%d$%d",&x,&y,&z); 102 cout<<x<<" "<<y<<" "<<z<<endl; 103 return 0; 104 }
转载于:https://www.cnblogs.com/zjl192628928/p/9142039.html
string的基本用法相关推荐
- string类具体用法
string类具体用法 二话不说上代码 #include<string> #include<iostream> #include<algorithm> using ...
- string和stringstream用法总结
string和stringstream用法总结 一.string string 是 C++ 提供的字串型態,和 C 的字串相比,除了有不限长度的优点外,还有其他许多方便的功能.要使用 string, ...
- string的常见用法详解
目录 string的定义 string中内容的访问 string常用函数实例解析 在C语言中,一般使用字符数组char str[]来存放字符串,但是使用字符数组有时会显得操作麻烦,而且容易因经验不足而 ...
- String.format() 方法用法解说
前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到教程. String chargeFlowUrl = _AGENT_URL+ "?agentAcc ...
- C++string类常用函数 c++中的string常用函数用法总结
string类的构造函数: string(const char *s); //用c字符串s初始化 string(int n,char c); //用n个字符c初始化 此外,string类 ...
- String.matches()的用法
String.matches()的用法 String.matches() 这个方法主要是返回是否匹配指定的字符串,如果匹配则为true,否则为false; 如:/** 判断字符创是否是一个有效的日期 ...
- C++中string::npos的用法总结
C++中string::npos的用法总结 一.关于npos的定义 二.nops的常见用法 三.注意点 一.关于npos的定义 在cplusplus.com中有如下解释: static const s ...
- java中String的常见用法总结
首先String不属于8种基本数据类型,String是一个对象. 因为对象的默认值是null,所以String的默认值也是null:但它又是一种特殊的对象,有其它对象没有的一些特性. 以下是关于str ...
- c++中string 的replace用法
转载于这位博主:链接1 链接2 c++ string string 的replace用法 string替换指定字符串内的所有字段 string 的replace用法 /*用法一: *用str替换指定字 ...
- 标准C++中的string类的用法总结
相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯 ...
最新文章
- POJ2492 A Bug s Life 题解
- 数据恢复 从binlog文件
- 004_Queue消息模式发送文本消息
- Python:对字符串匹配算法的分析
- 基于rancher在线安装k8s集群
- Linux设备驱动的分层设计思想
- 【面试总结】java测试工程师培训
- 电脑的发展史_UI设计发展史及未来
- 对JDBC进行简单的封装
- ConcurrentModificationException---异常剖析
- 关于数学建模竞赛经历
- matlab晶闸管整流电路,基于Matlab GUI的整流电路仿真
- 超硬核Java工程师秋招回忆录+面经汇总,为了拿BAT的研发offer我都做了那些准备?
- 使用微PE制作启动U盘重装系统教程
- x86已安装该产品 剑灵vcredist_vcredist_x86.exe 每次我一安装都出现这个提示,请问这是怎么回事,该怎么解决?谢谢...
- python area函数,python3 函数
- 通过IMAP方式迁移U-Mail邮件到Exchange 2013之2008R2 AD搭建!
- centos 安装Times New Roman
- PHP+AJAX开发幸运大转盘抽奖
- Three.js地球开发—6.三维球面上某点进行贴图标注