c++检测两个字符串重复
时间: 2023-09-21 14:10:36 浏览: 191
可以使用字符串比较函数strcmp()和循环来实现两个字符串的重复检测。
具体实现步骤如下:
1. 输入两个字符串str1和str2。
2. 使用strcmp()函数比较两个字符串是否相等,如果相等,则表示字符串重复。
3. 如果strcmp()函数返回值不为0,则表示两个字符串不相等,需要使用循环逐个比较字符串中的字符是否相等。
4. 如果循环结束后发现两个字符串中有任意一个字符不相等,则表示字符串不重复。
下面是使用C语言实现的示例代码:
```c
#include <stdio.h>
#include <string.h>
int main()
{
char str1[100], str2[100];
int i, flag = 0;
printf("Enter first string: ");
gets(str1);
printf("Enter second string: ");
gets(str2);
// Checking if two strings are equal using strcmp()
if (strcmp(str1, str2) == 0)
{
printf("Strings are identical.\n");
return 0;
}
// Comparing strings character by character
for (i = 0; str1[i] != '\0' || str2[i] != '\0'; i++)
{
if (str1[i] != str2[i])
{
flag = 1;
break;
}
}
if (flag == 0)
{
printf("Strings are identical.\n");
}
else
{
printf("Strings are not identical.\n");
}
return 0;
}
```
注意,上述代码中使用了gets()函数来读取输入的字符串,但是gets()函数存在缓冲区溢出的风险,不建议在实际开发中使用。可以考虑使用fgets()函数替代gets()函数,以提高代码的安全性。
阅读全文