c++写一个函数返回两个字符串中相同的字符串
时间: 2023-05-28 21:08:03 浏览: 62
以下是一个Python实现的示例代码:
```python
def find_common_str(str1, str2):
common_str = ""
for i in range(len(str1)):
for j in range(len(str2)):
if str1[i:].startswith(str2[j:]):
if len(str2[j:]) > len(common_str):
common_str = str2[j:]
return common_str
```
该函数接受两个字符串作为参数,然后在这两个字符串中查找相同的字符串。在这个函数中,我们使用了两个循环,分别遍历了两个字符串的所有子串,并且使用 `startswith()` 方法检查是否有相同的子串。如果找到了一个相同的子串,我们就将其存储在 `common_str` 变量中。最后,函数返回的是找到的最长的相同字符串。
相关问题
用c++写一个函数返回两个字符串中相同的字符串
以下是用C语言实现的函数,可以返回两个字符串中相同的字符串:
```c
#include <stdio.h>
#include <string.h>
char* find_common(char* str1, char* str2) {
static char common[100];
int i, j, k;
int len1 = strlen(str1);
int len2 = strlen(str2);
int maxlen = len1 > len2 ? len1 : len2;
k = 0;
for (i = 0; i < len1; i++) {
for (j = 0; j < len2; j++) {
if (str1[i] == str2[j]) {
common[k++] = str1[i];
}
}
}
common[k] = '\0';
return common;
}
int main() {
char str1[] = "Hello World";
char str2[] = "Goodbye World";
char* common = find_common(str1, str2);
printf("Common string: %s\n", common);
return 0;
}
```
该函数将两个字符串作为参数传递,并通过两个嵌套循环检查它们中的每个字符。如果两个字符匹配,则将它们添加到静态字符数组common中,并使用null终止符终止该数组。最后,该函数返回common数组,其中包含两个字符串中的所有匹配字符。在示例程序中,我们使用该函数查找两个字符串中的相同字符并打印输出结果。
写一个C++中将两个字符串合并到一起的函数
当然可以!下面是一个简单的C++函数,用于将两个字符串合并到一起:
```cpp
#include <iostream>
#include <cstring>
// 函数将两个字符串合并到一起
std::string mergeStrings(const std::string& str1, const std::string& str2) {
std::string mergedString = str1 + str2;
return mergedString;
}
int main() {
std::string str1 = "Hello, ";
std::string str2 = "world!";
std::string merged = mergeStrings(str1, str2);
std::cout << merged << std::endl;
return 0;
}
```
在这个例子中,我们定义了一个函数 `mergeStrings`,它接受两个字符串作为参数,并使用 `+` 运算符将它们连接起来。然后在 `main` 函数中,我们调用 `mergeStrings` 函数来将 `str1` 和 `str2` 进行合并,并输出结果。
运行此程序,输出将是 `Hello, world!`。希望这个例子能够帮助到你!如果有任何问题,请随时提问。