21xrx.com
2024-12-22 22:24:33 Sunday
登录
文章检索 我的文章 写文章
C++字符串截取方法
2023-07-05 07:04:00 深夜i     --     --
C++ 字符串 截取 方法

C++是一种多范式语言,它支持对象编程、泛型编程和过程式编程等多种编程范式,因此在字符串截取方面,它也有多种实现方法。本文将介绍C++中常用的几种字符串截取方法。

1. substr()函数

substr()是C++中字符串类 的一个成员函数,用于从一个字符串中截取子串,其函数原型为:

string substr (size_t pos = 0, size_t len = npos) const;

其中,pos参数表示要截取的子串起始位置,len参数表示要截取的子串长度,缺省值为npos,表示从pos开始一直截取到字符串末尾。

例如,假设有一个字符串str,其内容为“Hello World”,要截取其中的 “World”,可以使用以下代码:

string str = "Hello World";

string substr = str.substr(6, 5);

cout << substr << endl; //输出结果为"World"

2. strtok()函数

strtok()函数是C标准库函数,用于将一个字符串按照指定的分隔符分割成多个部分,其函数原型为:

char* strtok(char* str, const char* delim);

其中,str参数表示要分割的字符串,delim参数表示分隔符。该函数将返回分隔符前的字符串,直到没有更多的子串为止。如果需要继续分割原字符串,则将str参数设置为NULL即可。

例如,假设有一个字符串str,其内容为“Hello World”,要将其分割成两个子串,可以使用以下代码:

char str[] = "Hello World";

char* substr = strtok(str, " ");

cout << substr << endl;  //输出结果为"Hello"

substr = strtok(NULL, " ");

cout << substr << endl;  //输出结果为"World"

3. 使用find()函数和substr()函数

在C++中,还可以通过调用find()函数找到指定字符或字符串的位置,然后使用substr()函数截取子串,实现字符串截取。

例如,假设有一个字符串str,其内容为“Hello World”,要截取其中的 “World”,可以使用以下代码:

string str = "Hello World";

size_t pos = str.find("World");

string substr = str.substr(pos, 5);

cout << substr << endl; //输出结果为"World"

总之,以上是C++中常用的几种字符串截取方法,程序员可以根据具体情况选择合适的方法实现字符串截取。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复