你好我需要make / append / concat函数。如何将反转的字符添加到我的“主要字符”中?注释示例输出。
这是我的func代码和main:
void app(char *str2,const char *str1){
const char *temp=str1;
char* temp_snd=str2;
const char*temp_trd=str1;
char *temp_fth;
while(*temp_trd){
temp_trd++;
}
while(temp_trd!=str1){
temp_trd--;
*temp_fth=*temp_trd;
temp_fth++;
}
*temp_fth='\0';
while(*temp&&*temp_snd){
temp++;
temp_snd++;
}
while(temp!=str1&&temp_snd!=temp){
temp--;
temp_snd++;
*temp_snd=*temp;
}
strcat(temp_snd, temp_fth);
}
这是我的主要内容:
int main(int argc, const char * argv[]) {
const char *str1 = "seY ";
char str2[20] = "Hello";
cout << str2 << endl; // Hello
app(str2, str1);
cout << str2 << endl; // Hello Yes
app(str2, "llor ");
cout << str2 << endl; // Hello Yes Roll
return 0;
}
这是我的输出:
Hello
Hello Yes
Hello roll
我知道我的功能并非完美,但要富有同情心。请。
答案 0 :(得分:1)
你可以试试这个:
void add (char x[])
{
int n;
cin >> n; // Length of string
char*y=new char[n];
cin >> y;
reverse(y, y+strlen(y));
strcat(x, " ");
strcat(x, y);
}
int main()
{
int n;
cin >> n; // Length of base string
char *x=new char[n];
cin >> x;
add(x);
cout << x << endl;
}