#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的基本用法的更多相关文章

  1. 标准C++中的string类的用法总结

    标准C++中的string类的用法总结 相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有 ...

  2. sstream头文件-getline 函数 和 stringstream函数 和string的常见用法

    2017-08-12 19:50:50 writer:pprp getline函数可以读入一行的字符,不论有没有空格 第一个参数,流 第二个参数 ,将流读入的地方 第三个参数,当读到某个字符的时候停止 ...

  3. 详解 SWT 中的 Browser.setUrl(String url, String postData, String[] headers) 的用法

    http://hi.baidu.com/matrix286/item/b9e88b28b90707c9ddf69a6e ———————————————————————————————————————— ...

  4. String的高级用法(String.Format)

    string.Format C#的String.Format的一般地我们可以直接使用string.format()或int.ToString()和float.ToString() 下面是一些Strin ...

  5. VC++ 标准C++中的string类的用法总结

    相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯 ...

  6. [C++][语言语法]标准C++中的string类的用法总结

    转自:http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html 要想使用标准C++中string类,必须要包含 #include ...

  7. JavaScript学习总结一(String对象的用法)

    javascript String对象的常用API 1:indexOf indexOf() 方法可返回某个指定的字符串值在字符串中首次出现的位置.如果没有找到匹配的字符串则返回 -1.注意: inde ...

  8. 标准C++中string类的用法

    转自博客园:http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html 相信使用过MFC编程的朋友对CString这个类的印象应该非 ...

  9. 标准C++中的string类的用法总结(转)

    http://www.cnblogs.com/xFreedom/archive/2011/05/16/2048037.html 相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的 ...

  10. 【C++】C++中的string类的用法总结

    相信使用过MFC编程的朋友对CString这个类的印象应该非常深刻吧?的确,MFC中的CString类使用起来真的非常的方便好用.但是如果离开了MFC框架,还有没有这样使用起来非常方便的类呢?答案是肯 ...

随机推荐

  1. Azure系列2.1.4 —— BlobInputStream

    (小弟自学Azure,文中有不正确之处,请路过各位大神指正.) 网上azure的资料较少,尤其是API,全是英文的,中文资料更是少之又少.这次由于公司项目需要使用Azure,所以对Azure的一些学习 ...

  2. iphone 分辨率相关

    iPhone 1G 320x480 iPhone 3G 320x480 iPhone 3GS 320x480 iPhone 4 640x960 iPhone 4S 640x960 iPhone 5 6 ...

  3. Day 4-1 模块的导入方法和路径

    什么是模块? 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,越来越不容易维护. 为了编写可维护的代码,我们把很多函数分组,分别放到不同的文件里,这样,每个文件包含的代码 ...

  4. Django--cookie 和 session

    一 . 会话跟踪 简单来说就是如果谢霆锋登录了淘宝,然后他点击淘宝内的任何连接就不需要在登录了,这是由于这个会话中数据共享, 也就是会话跟踪, 我们都知道http协议是短连接 无状态的,也就是说你登录 ...

  5. 重写TreeView模板来实现数据分层展示(二)

    前面一片文章实现TreeView的基本的模板重写,那么照着这个思路,我们再来写一个稍稍复杂的TreeView ,其它的内容都和前面系列内容相似,还是和之前文章介绍的一样,首先看看做出的DEMO的最终样 ...

  6. WampServer的安装和配置

    1.安装WampServer 启动时发现WampServer的图标是红色的,状态为put offline状态:发现无法put online,并报错could not found the menu it ...

  7. 移动APP用例设计中的关键点(转载)

    http://www.51testing.com/html/52/n-4421752.html 在测试工作中我们需要不断的总结和储备自己的知识和经验,譬如具备特定属性.环境以及场景,如:PC,手机,智 ...

  8. Vue之v-for、v-show使用举例

    demo.html <!DOCTYPE html> <html lang="en" xmlns:v-bind="http://www.w3.org/19 ...

  9. Java使用RabbitMQ之整合Spring(生产者)

    依赖包 <!--RabbitMQ集成spring--> <!-- https://mvnrepository.com/artifact/org.springframework.amq ...

  10. C-Lodop提示“网页还没下载完毕,请稍等一下再操作.”

    该提示在Lodop旧版本中是: 提示"WebSocket没准备好,点确定继续",提示“C-Lodop没准备好”,新版本修改了该提示的描述“网页还没下载完毕,请稍等一下再操作.”,让 ...