int my_strcmp(char *str1,const *str2);
时间: 2023-07-23 22:08:19 浏览: 137
首先,你的函数声明中有一个错误。`const`键字应该放在 `char` 前面,指明 `str2` 是一个指向常量字符的指针。这样的话,函数声明应该是这样的:
```c
int my_strcmp(char *str1, const char *str2);
```
接下来,你可以使用以下代码来实现一个类似于 `strcmp` 的函数:
```c
int my_strcmp(char *str1, const char *str2) {
while (*str1 == *str2) {
if (*str1 == '\0')
return 0;
str1++;
str2++;
}
return *str1 - *str2;
}
int main() {
char str1[] = "Hello";
char str2[] = "Hello";
int result;
result = my_strcmp(str1, str2);
if (result == 0) {
printf("Strings are equal\n");
} else if (result > 0) {
printf("String 1 is greater than String 2\n");
} else {
printf("String 1 is less than String 2\n");
}
return 0;
}
```
在上面的示例中,我们使用 `my_strcmp` 函数比较了两个字符串 `str1` 和 `str2`。根据函数的返回值,我们可以判断两个字符串的关系。如果返回值为 0,则表示两个字符串相等;如果返回值大于 0,则表示 `str1` 大于 `str2`;如果返回值小于 0,则表示 `str1` 小于 `str2`。
输出结果为:
```
Strings are equal
```
希望能对你有所帮助!
阅读全文