zoukankan      html  css  js  c++  java
  • C++ 标准库类型string

      string 类型在头文件 string 内,定义在 std 命名空间中。

      定义和初始化

      string s1;

      string s2(s1);  //拷贝初始化

      string s2=s1;  //同上

      string s3("hello world ");  //使用字面值初始化

      string s4(10,'c');  //使用连续10个 c 初始化

      操作

      getline(is,s);  //从 is 中读取一行赋给s,返回is

      s.empty();  //判断 s 是否为空

      s.size();  //返回 s 中字符个数

      s1+s1;  //返回 s1 和s2 连接后的字符串

      s.append()  //在末尾添加新字符串

      s.find()  //返回字符串或字符在 s 中第一次出现的位置,如果没找到返回string::npos 

      s.rfind()  //逆序查找 

      额外的string操作

      构造的其他方法:

      string s(cp,n)   //s是cp指向数组中前n个字符的拷贝。此数组至少应该包含n个字符

      string s(s2,pos2)  //s是string s2 从下标pos2开始的字符的拷贝

      string s(s,pos2,len2)  //拷贝len2个字符

      substr操作:

      substr(t)  //拷贝从t后字符

      substr(t,n)  //拷贝从t后n个字符

      改变string的方法:

      s.insert(s.size(),5,'!');   //在s末尾插入5个感叹号

      s.erase(s.size()-5,5);  //删除最后5个字符

      const char *cp="Stately, plump Buck";

      s.assign(cp,7);  //s=="Stately"

      s.insert(s.size(),cp+7);  //s==*cp

      append和replace函数:

      append(args)  //将args追加到原字符串

      replace(t,n,s)  //在t处删除n个字符,插入s

      搜索操作:

      s.find(args)  //查找s中args第一次出现的位置

      s.rfind(args)  //查找s中args最后一次出现的位置

      s.find_first_of(args)  //查找s中args中任意一个字符第一次出现的位置

      s.find_last_of(args)  //查找最后一次位置

      s.find_first_not_of(args)  //查找第一次没出现的位置

      s.find_last_not_of(args)  //查找最后一次没出现的位置

      args为 c,pos,n,c为字符或字符串,pos为开始查找的位置,默认为0,n为查找前n个字符

      比较操作

      s1.compare(pos1,n1,s2,pos2,n2)  //将s1中从pos1开始的n1个字符和s2中从pos2开始的n2个字符比较

      数值转换

      to_string(val)  //一组重载函数,返回val的string表示,val可以是任何算术类型

      stoi(s,p,b)  //返回s的起始子串的数值,b表示转换所用基数,默认为10,p是size_t指针,用来保存s中第一个非数值字符的下表,p默认0。

  • 相关阅读:
    C++ 练习02 魔术师发牌问题
    C++ 入门2 类型转换
    C++ 入门1 C++简介
    一个简单计算器的实现
    C++练习01 打印杨辉三角
    数据结构01数据结构基础01
    Lesson_7 作业_1 Driver 和 Car
    Caterl Java寒假基础练习题(一) 循环相加
    Lesson_9 上课笔记 多态
    Lesson_10 作业计算工资
  • 原文地址:https://www.cnblogs.com/wshr007/p/10440213.html
Copyright © 2011-2022 走看看