c++ 实现一个自己的字符串连接函数
时间: 2024-02-28 14:56:54 浏览: 16
好的,可以参考以下代码实现一个字符串连接函数:
```c++
#include <iostream>
#include <cstring>
using namespace std;
char* mystrcat(char* dest, const char* src)
{
char* p = dest + strlen(dest);
while(*src != '\0')
{
*p++ = *src++;
}
*p = '\0';
return dest;
}
int main()
{
char str1[20] = "hello";
char str2[] = " world";
mystrcat(str1, str2);
cout << str1 << endl;
return 0;
}
```
这里的mystrcat函数实现了将src字符串连接到dest字符串的末尾,并返回dest的地址。具体实现是,先将p指向dest字符串的末尾,然后遍历src字符串,依次将src中的字符赋值给p,直到遇到'\0'为止。最后将p所指向的位置置为'\0',表示连接结束。
相关问题
c++ 实现一个自己的字符串连接函数,连接符为“-”
好的,可以参考以下代码实现一个连接符为“-”的字符串连接函数:
```c++
#include <iostream>
#include <cstring>
using namespace std;
char* mystrcat(char* dest, const char* src)
{
char* p = dest + strlen(dest);
*p++ = '-';
while(*src != '\0')
{
*p++ = *src++;
}
*p = '\0';
return dest;
}
int main()
{
char str1[20] = "hello";
char str2[] = "world";
mystrcat(str1, str2);
cout << str1 << endl;
return 0;
}
```
这里的mystrcat函数实现了将src字符串连接到dest字符串的末尾,并在中间加上“-”连接符,并返回dest的地址。具体实现是,先将p指向dest字符串的末尾,然后将连接符“-”赋值给*p,p指针向后移动一位。接下来遍历src字符串,依次将src中的字符赋值给*p,直到遇到'\0'为止。最后将*p所指向的位置置为'\0',表示连接结束。
自定义实现字符串连接函数c++
可以使用以下代码实现字符串连接:
```c++
#include <string>
std::string concat(std::string str1, std::string str2) {
return str1 + str2;
}
```
或者使用以下代码实现字符串连接:
```c++
#include <string>
std::string concat(const std::string& str1, const std::string& str2) {
std::string result = str1;
result += str2;
return result;
}
```
这两种方法都是使用 C++ 标准库中的 std::string 类型,通过重载运算符 + 或使用 std::string 类型提供的成员函数 += 来实现字符串连接。第二种方法中,使用 const& 来避免不必要的复制。