zoukankan      html  css  js  c++  java
  • C++字符串操作小结

    忽略大小写比较大小

    • 库函数strcasecmp和_stricmp:
      这两个函数都不属于C++标准库,strcasecmp由POSIX引入,windows平台则定义了功能等价的_stricmp。用法和C++标准库的strcmp类似。

      #include <cstring>
      
      #if defined(_WIN32)
      #define strcasecmp _stricmp
      #endif
      
    • boost函数iequals:

      #include <boost/algorithm/string.hpp>
      
      int main(int argc, const char *argv[]) {
          bool equal = boost::iequals("ABC", "abc");
          return 0;
      }
      

    在gcc -O2的条件下,发现iequals比strcasecmp慢了很多。

    读取一整行

    istream& getline (istream& is, string& str, char delim);
    istream& getline (istream& is, string& str);
    

    std::string类提供了读取一整行的接口,从标准输入读取时,可以用getline(std::cin, str)来读取整行数据。

    转义字符

    转义字符 意义 ASCII码值(十进制)
    a 响铃(BEL) 007
     退格(BS) ,将当前位置移到前一列 008
    f 换页(FF),将当前位置移到下页开头 012
    换行(LF) ,将当前位置移到下一行开头 010
    回车(CR) ,将当前位置移到本行开头 013
    水平制表(HT) (跳到下一个TAB位置) 009
    v 垂直制表(VT) 011
    代表一个反斜线字符''' 092
    ' 代表一个单引号(撇号)字符 039
    " 代表一个双引号字符 034
    ? 代表一个问号 063
    空字符(NULL) 039
    ddd 1到3位八进制数所代表的任意字符 三位八进制
    xhh 1到2位十六进制所代表的任意字符 二位十六进制
  • 相关阅读:
    Mac上安装Git
    原型对象和原型链
    ES6入门
    一边宽度固定,一边宽度自适应
    15种css居中方式
    阿里CDN核心技术解密
    尽量用const,enum,inline代替define
    Nginx安装
    百度笔试题:malloc/free与new/delete的区别(转)
    C++内存管理(转)
  • 原文地址:https://www.cnblogs.com/HachikoT/p/12561204.html
Copyright © 2011-2022 走看看