gpt4 book ai didi

C++ 不能减去两个字符串

转载 作者:太空宇宙 更新时间:2023-11-04 15:20:54 25 4
gpt4 key购买 nike

我想在这段代码中减去两个字符串,但它不让我这样做并给出一个运算符 - 错误。这段代码基本上试图将一个完整的输入名称分成两个输出:名字和姓氏。请帮忙!谢谢!

#include <iostream>
#include <cstdlib>
#include <string>
using namespace std;

string employeeName, firstName, lastName;
int pos1, difference;

int main() {
cout << "Enter your full name: " << endl;
getline(cin, employeeName);

pos1 = employeeName.find(" ");
difference = pos1 - 0;
lastName = employeeName.erase(0,difference);
firstName = employeeName - lastName;

cout << lastName << firstName << endl;

system("pause");
return 0;
}

最佳答案

你应该使用 std::string::substr。像这样减去字符串是无效的。

firstName = employeeName.substr(0, employeeName.find(" "));

第一个参数是要提取的子串的起始索引,第二个参数是子串的长度。

关于C++ 不能减去两个字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19412698/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com