1.c++ 有两种风格的字符串形式
  c风格字符串
  定义及初始化
  char a[]={'h','e','l','l','o','\0'}
  或者
  char a[]="hello"; //C++ 编译器会在初始化数组时,自动把 '\0' 放在字符串的末尾

输出:cout<<a;
             或者
             for(int i=0;i<strlen(a);i++)
                 cout<<a[i]

长度:strlrn(a);

  string类型
  定义及初始化:
  string a="hello";
 
  输出:cout<<a;

或者
             for(int i=0;i<strlen(a);i++)
                 cout<<a[i](或者a.at(i) )
 
  长度:a.size();

2.string类型的字符串运算和函数

在以字符数组存放字符串时,字符串的运算要用字符串函数,如strcat(连接)、strcmp(比较)、strcpy(复制),而对string类对象,可以不用这些函数,而直接用简单的运算符。

这是因为模板库中重载了例如 + 、+= 、= 的运算符。

1).字符串复制用赋值号
         string1=string2;
         其作用与“strcpy(string1,string2);”相同。

2).字符串连接用加号
         string string1=″C++″; //定义string1并赋初值
         string string2=″Language″;//定义string2并赋初值
         string1=string1 + string2;//连接string1和string2
         连接后string1为″C++ Language″。

3)字符串比较直接用关系运算符
       可以直接用 ==(等于)、>(大于)、<(小于)、!=(不等于)、>=(大于或等于)、<=(小于或等于)等关系运算符来进行字符串的比较。
       使用这些运算符比使用5.5.5节中介绍的字符串函数直观而方便

4)获取字符串的第一个字符   获取字符串的最后一个字符

string::const_iterator it = str1.begin();
     cout << *it << endl;
     cout << endl;
     
     it = str1.end();//end是指向最后一个字符后面的元素,而且不能输出,所以cout << *it << endl;这样输出会报错
     it--;
    cout << *it << endl;
    cout << endl;

5)倒置串

reserve(str.begin(),str.end());

6)查找串

//find-从指定位置起向后查找,直到串尾
     string st1("babbabab");
     cout << st1.find('a') << endl;       //1       默认从位置0(即第1个字符)开始查找
     cout << st1.find('a', 2) << endl;   //4       在st1中,从位置2(b,包括位置2)开始,查找a,返回首次匹配的位置
     string st2("aabcbcabcbabcc");
     str1 = "abc";
     cout << st2.find(str1, 2) << endl;//6     从st2的位置2(b)开始匹配,返回第一次成功匹配时匹配的串(abc)的首字符在st2中的位置,失败返回-1

    7)截取字符串

str.substr(startpos,length); //从str的startpos位置截取length长度的字符串

 

c++ string类型的定义及方法的更多相关文章

  1. String类型的属性和方法

    × 目录 [1]属性 [2]对象通用方法 [3]访问字符方法[4]字符串拼接[5]创建子串方法[6]大小写转换[7]查找子串位置[8]正则匹配方法[9]去除首尾空格[10]字符串比较 前面的话 前面已 ...

  2. java对象转换String类型的三种方法

    在很多情况下我们都需要将一个对象转换为String类型.一般来说有三种方法可以实现:Object.toString().(String)Object.String.valueOf(Object).下面 ...

  3. string类型的解释与方法

    基本概念 string(严格来说应该是System.String) 类型是我们日常coding中用的最多的类型之一.那什么是String呢?^ ~ ^ String是一个不可变的连续16位的Unico ...

  4. Java 中转换为String类型的四种方法

    1. 使用 String 的构造方法,用于 byte[], char[], StringBuffer, StringBuilder 类型 2. 使用 String 的静态方法 valueOf() 推荐 ...

  5. String类型字符 常用的方法

    例子: String r=“我是谁” System.out.println(r.length())

  6. 后台传入的boolean类型到前台alert为String类型了(解决方法)

    后台代码: // 进入仪器list界面之前查看 是否是科研处人员        SessionContainer sc = (SessionContainer) session.getAttribut ...

  7. 字符、字符串和文本的处理之String类型

    .Net Framework中处理字符和字符串的主要有以下这么几个类: (1).System.Char类 一基础字符串处理类 (2).System.String类 一处理不可变的字符串(一经创建,字符 ...

  8. 【原创】自制string类型(已完成)

    这篇文章首发于360doc http://www.360doc.com/content/21/0526/17/73755266_979099504.shtml ,其实360doc里面的那个也是我的帐号 ...

  9. 5.6.3 String类型

    String类型是字符串的对象包装类型,可以像下面这样使用String构造函数来创建. var stringObject = new String("hello world"); ...

随机推荐

  1. Unity热更新学习(二) —— ToLua c#与lua的相互调用

    tolua 下载地址:http://www.ulua.org/index.html c#调用lua的方法,tolua的官方例子提供了很多种.我初步学了一种在做项目使用的方法.通过DoFile方法执行l ...

  2. Jmeter自定义Java请求,继承AbstractJavaSamplerClient

    首先,使用Eclipse新建一个项目,然后从Jmeter的lib/ext目录下中拷贝ApacheJMeter_java.jar和ApacheJMeter_core.jar两个文件,然后引入这两个JAR ...

  3. 【H5 音乐播放实例】第一节 音乐详情页制作(1)

    本教程是一个H5音乐播放的详情页制作,实现了H5音乐播放,音轨的跳动,已经较为酷炫的UI界面. 通过本教程,您会学到: 1.H5音乐播放 (带音轨) 2.iconfont字体图标库 3.div+css ...

  4. vue项目使用echarts按需引入实现地图动态显示效果时,报错:TypeError: Cannot read property 'dataToPoint' of undefined

    vue项目使用echarts按需引入实现地图动态显示效果时,报错:TypeError: Cannot read property 'dataToPoint' of undefined 借鉴了该大神的文 ...

  5. [LOJ#517]. 「LibreOJ β Round #2」计算几何瞎暴力[trie]

    题意 题目链接 分析 记操作异或和为 \(tx\) ,最后一次排序时的异或和为 \(ax\) ,每个数插入时的 \(tx\) 记为 \(b\). 我们发现,一旦数列排序,就会变得容易操作. 对于新加入 ...

  6. Java过滤掉字符串中的html标签、style标签、script标签

    使用正则表达式 import java.util.regex.Matcher; import java.util.regex.Pattern; public class HTMLSpirit{ pub ...

  7. 开源Dapper的Lambda扩展-Sikiro.Dapper.Extension V2.0

    前言 去年我在业余时间,自己整了一套dapper的lambda表达式的封装,原本是作为了一个个人的娱乐项目,当时也只支持了Sql Server数据库.随之开源后,有不少朋友也对此做了试用,也对我这个项 ...

  8. Centos7 安装 Redis

    关闭防火墙:systemctl stop firewalld.service #停止firewallsystemctl disable firewalld.service #禁止firewall开机启 ...

  9. ZooKeeper: 简介, 配置及运维指南

    1. 概览 ZooKeeper是一个供其它分布式应用程序使用的软件, 它为其它分布式应用程序提供所谓的协调服务. 所谓的协调服务, 是指ZooKeeper的如下能力 naming 命名 configu ...

  10. 《Spring Boot 入门及前后端分离项目实践》目录

    开篇词:SpringBoot入门及前后端分离项目实践导读 第02课:快速认识 Spring Boot 技术栈 第03课:开发环境搭建 第04课:快速构建 Spring Boot 应用 第05课:Spr ...