gpt4 book ai didi

c++ - 抓取字符串的一部分,如 substr

转载 作者:行者123 更新时间:2023-11-28 07:19:13 29 4
gpt4 key购买 nike

所以我正在制作一个类似于 SubStr 的函数。这是一项任务,所以我不能使用实际功能来执行此操作。到目前为止,我已经创建了一个函数来获取一个字符串,然后获取所需的子字符串。我的问题是返回子字符串。在函数中,当我执行 Substring[b] = AString[b]; 时,子字符串为空,但如果我从函数内部 cout ,我会得到所需的子字符串。那么我的代码有什么问题呢?

这是一个工作演示:http://ideone.com/4f5IpA

#include <iostream>
using namespace std;

void subsec(char AString[], char Substring[], int start, int length);

int main() {
char someString[] = "abcdefg";
char someSubString[] = "";

subsec(someString, someSubString, 1, 3);
cout << someSubString << endl;

return 0;
}

void subsec(char AString[], char Substring[], int start, int length) {
for (int b = start; b <= length; b++) {
Substring[b] = AString[b];
}
}

最佳答案

也许这就是您要找的东西?很难说,因为您的初始实现更多地使用长度参数作为结束位置。

#include <iostream>
using namespace std;

void subsec(char AString[], char Substring[], int start, int length)
{
const int end = start + length;
int pos = 0;
for(int b = start; b < end; ++b)
{
Substring[pos++] = AString[b];
}
Substring[pos] = 0;
}

int main()
{
char someString[50] = "abcdefghijklmnopqrstuvwxyz";
char someSubString[50];

subsec(someString, someSubString, 13, 10);
cout << someSubString << endl;

return 0;
}

关于c++ - 抓取字符串的一部分,如 substr,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19760730/

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