zoukankan      html  css  js  c++  java
  • C++ String

    string 是C++中的字符串。 字符串对象是一种特殊类型的容器,专门设计来操作的字符序列。 不像传统的c-strings,只是在数组中的一个字符序列,我们称之为字符数组,而C + +字符串对象属于一个类,这个类有很多内置的特点,在操作方式,更直观,另外还有很多有用的成员函数。 string 的定义为:typedef basic_string<char> string;

     

    成员函数(Member functions)

    (constructor) 构建字符串对象 (构造函数成员)
    operator= 字符串赋值 (公有成员函数)

     以下全为公有成员函数

    迭代器(Iterator)

    begin 返回指向字符串开始处的迭代器
    end 返回指向字符串结束处之后的迭代器
    rbegin 返回指向反向开始处的反向迭代器,即:指向结束处的迭代器
    rend 返回指向反向结束处的反向迭代器,即:指向开始处之前的迭代

    容量(Capacity)

    size 返回字符串长度
    length 返回字符串长度
    max_size 返回字符串的最大长度
    resize 改变字符串大小,即:多去少补
    capacity 返回分配存储空间大小
    reserve 请求改变存储空间大小
    clear 清空字符串
    empty 测试字符串是否为空

     

    访问元素(Eelment access)

    operator[] 得到字符串中的字符
    at 得到字符串中的字符

     

    修改(Modifiers)

    operator+= 追加
    append 追加
    push_back 追加字符到字符串
    assign 赋值
    insert 插入
    erase 从字符串中擦除一些字符
    replace 替换部分或全部字符
    swap 与另一字符串交换内容

     

    字符串操作(String operation)

    c_str 得到等效的字符数组
    data 得到等效的字符串数据
    get_allocator 得到分配器
    copy 从字符串中复制字符序列
    find 查找字符
    rfind 从后向前查找字符
    find_first_of 查找某个字符第一次出现的位置
    find_last_of 查找某个字符最后一次出现的位置
    substr 生成子字符串
    compare 比较

     

     

    几个比较重要的成员函数的用法: 

     

    find:

    int find( TCHAR ch ) const;

    int find( LPCTSTR lpszSub ) const;

    int find( TCHAR ch, int nStart ) const;

    int find( LPCTSTR pstr, int nStart ) const;
     
    Parameters:
     
    ch
    要查找的字符.
    lpszSub
    要查找的子字符串.
    nStart
    要查找的字符或子串首字符的位置索引.
    pstr
    被查找的父字符串.
     
    Return Value
    返回被查找字符(串)的位置索引; 未找到则返回-1.
     
    substr:

    basic_string substr(size_type _Off = 0,size_type _Count = npos) const;

    功能:从一个字符串复制一个从指定位置开始,并具有指定长度的子字符串。
     
    参数:
     
    _Off
    所需的子字符串的起始位置。字符串中第一个字符的索引为 0,默认值为0.
     
    _Count
    复制的字符数目
     
    返回值:
    一个子字符串,从其指定的位置开始
     
    PS:如果 length 为 0 或负数,将返回一个空字符串。如果没有指定该参数,则子字符串将延续到字符串的结尾。
    举杯独醉,饮罢飞雪,茫然又一年岁。 ------AbandonZHANG
  • 相关阅读:
    51nod 1122 机器人走方格 V4(矩阵乘法)
    51nod 1092 回文字符串
    51nod 1254 最大子段和 V2(递推)
    容斥原理求gcd为k的数对个数
    51nod 1115 最大M子段和 V3
    51nod 1053 最大M子段和 V2(贪心)
    洛谷P1792 [国家集训队]种树
    洛谷P1484 种树(反悔贪心,双向链表+堆)
    51 nod 1052 最大M子段和
    51 nod 1051 最大子矩阵和
  • 原文地址:https://www.cnblogs.com/AbandonZHANG/p/2621520.html
Copyright © 2011-2022 走看看