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

    1:

    s.empty() 如果 s 为空串,则返回 true,否则返回 false。
    s.size() 返回 s 中字符的个数
    s[n] 返回 s 中位置为 n 的字符,位置从 0 开始计数
    s1 + s2 把 s1 和s2 连接成一个新字符串,返回新生成的字符串
    s1 = s2 把 s1 内容替换为 s2 的副本
    v1 == v2
    比较 v1 与 v2 的内容,相等则返回 true,否则返
    回 false
    !=, <, <=, >, and >= 保持这些操作符惯有的含义

    2: string::size_type 类型

    从逻辑上来讲,size() 成员函数似乎应该返回整形数值,或如 2.2 节“建
    议”中所述的无符号整数。但事实上,size 操作返回的
    是 string::size_type 类型的值。我们需要对这种类型做一些解释。

    string 类类型和许多其他库类型都定义了一些配套类型(companion type)。
    通过这些配套类型,库类型的使用就能与机器无关(machine-independent)。
    size_type 就是这些配套类型中的一种。它定义为与 unsigned 型(unsigned
    int 或 unsigned long)具有相同的含义,而且可以保证足够大能够存储任
    意 string 对象的长度。为了使用由 string 类型定义的 size_type 类型是
    由 string 类定义。
    任何存储 string 的 size 操作结果的变量必须
    为 string::size_type 类型。特别重要的是,还要
    把 size 的返回值赋给一个 int 变量。

    虽然我们不知道 string::size_type 的确切类型,但可以知道它
    是 unsigned 型(2.1.1 节)。对于任意一种给定的数据类型,它的 unsigned 型
    所能表示的最大正数值比对应的 signed 型要大倍。这个事实表
    明 size_type 存储的 string 长度是 int 所能存储的两倍。

    使用 int 变量的另一个问题是,有些机器上 int 变量的表示范围太小,甚
    至无法存储实际并不长的 string 对象。如在有 16 位 int 型的机器上,int 类
    型变量最大只能表示 32767 个字符的 string 个字符的 string 对象。而能容
    纳一个文件内容的 string 对象轻易就会超过这个数字。因此,为了避免溢出,
    保存一个 stirng 对象 size 的最安全的方法就是使用标准库类
    型 string::size_type。

    3: string 对象中字符的处理

    isalnum(c) 如果 c 是字母或数字,则为 True。
    isalpha(c) 如果 c 是字母,则为 true。
    iscntrl(c) 如果 c 是控制字符,则为 true
    isdigit(c) 如果 c 是数字,则为 true。
    isgraph(c) 如果 c 不是空格,但可打印,则为 true。
    islower(c) 如果 c 是小写字母,则为 true。

    isprint(c) 如果 c 是可打印的字符,则为 true。

    ispunct(c) 如果 c 是标点符号,则 true。
    isspace(c) 如果 c 是空白字符,则为 true。
    isupper(c) 如果 c 是大写字母,则 true。
    isxdigit(c) 如果是 c 十六进制数,则为 true。
    tolower(c) 如果 c 大写字母,返回其小写字母形式,否则直接返回 c。
    toupper(c) 如果 c 是小写字母,则返回其大写字母形式,否则直接返回 c。

    可打印的字符是指那些可以表示的字符;

    空白字符则是空格、制表符、垂直制表符、回车符、换行符和进纸符中的任意一种;

    标点符号则是除了数字、字母或(可打印的)空白字符(如空格)以外的其他可打印字符。

  • 相关阅读:
    纯MATLAB版本 SIFT代码
    hadoop2.4集群的搭建
    hadoop2.4的伪集群的搭建
    linux 下的ssh免密登陆设置
    linux 下的常用操作命令
    linux中的IP地址的修改
    使用idea创建maven多模块项目
    Hudson的使用
    创建线程的几种方法
    idea添加内存
  • 原文地址:https://www.cnblogs.com/ruzhuan/p/3442170.html
Copyright © 2011-2022 走看看