📌  相关文章
📜  如何在 C++ 中找到字符串的最后一个字符(1)

📅  最后修改于: 2023-12-03 15:08:35.019000             🧑  作者: Mango

如何在 C++ 中找到字符串的最后一个字符

在 C++ 中,我们可以使用以下方法来找到一个字符串的最后一个字符:

方法一:使用 string 类型的 back() 成员函数

string 类型提供了许多有用的成员函数,其中 back() 函数可以返回字符串中的最后一个字符。示例代码如下:

#include <iostream>
#include <string>

using namespace std;

int main() {
    string str = "Hello, world!";
    char last_char = str.back(); // 获取字符串最后一个字符
    cout << "The last character is: " << last_char << endl;
    return 0;
}

输出:

The last character is: !
方法二:使用指针运算符 []

字符串是由字符数组组成的,我们也可以使用指针运算符来访问最后一个字符,示例代码如下:

#include <iostream>
#include <string>

using namespace std;

int main() {
    string str = "Hello, world!";
    char last_char = str[str.size()-1]; // 获取字符串最后一个字符
    cout << "The last character is: " << last_char << endl;
    return 0;
}

输出:

The last character is: !

上述代码中,我们使用 [] 运算符获取最后一个字符,其中 size() 函数可以返回字符串的长度(即字符个数),需要减一才能访问最后一个字符。

方法三:使用 substr() 成员函数

substr() 成员函数可以返回一个子字符串,我们可以使用该函数获取最后一个字符的子字符串,示例代码如下:

#include <iostream>
#include <string>

using namespace std;

int main() {
    string str = "Hello, world!";
    string last_char_str = str.substr(str.size()-1); // 获取字符串最后一个字符的子字符串
    char last_char = last_char_str[0]; // 将子字符串转换为字符
    cout << "The last character is: " << last_char << endl;
    return 0;
}

输出:

The last character is: !

上述代码中,我们使用 substr() 函数获取一个子字符串,其中参数为起始位置和长度,这里的长度为 1,然后使用 [] 运算符获取子字符串中的第一个字符。