我意识到我处理这个问题的方式是错误的,但我不知道为什么。一般来说,我对 C++/编程很陌生。我希望我的程序执行以下操作。如果我输入“setwanted joe”,我希望它将 joe 存储到 char 数组中。我有它,所以我可以成功地分开和 cout joe,但我不能从函数中返回 char 数组。这是我的示例代码。
char * GETNAME (char *searchinput, char*searchtext)
{
char returnname[64];
int starter=0;
for(;;)
{
if (*searchinput == *searchtext)
{
searchinput++;
searchtext++;
}
if (*searchinput == ' ')
{
searchinput++;
searchtext++;
}
if (*searchinput!='\0' && *searchinput!= *searchtext && *searchinput != ' ')
{
returnname[starter] = *searchinput;
starter++;
searchinput++;
searchtext++;
}
if (*searchinput=='\0')
{
returnname[starter]='\0';
cout << "Char Array to Return: " << returnname << endl;
return returnname;
}
}
}
以上是我尝试从 char 数组返回名称的函数。这是我用来调用该函数的代码。
char Recv[256];
cin >> Recv;
char * wantedname = new char[64];
wantedname = GETNAME(Recv,"setwanted");
cout << "Returned Name: " << wantedname << endl;
感谢您的阅读/您的耐心,我知道这很混乱。