请用c语言编写一个函数实现两个字符串的比较,要求实参为字符数组,形参为字符指针
时间: 2024-03-21 22:38:07 浏览: 105
好的,这是一个简单的字符串比较函数的示例代码:
```c
#include <stdio.h>
int compareStrings(char *str1, char *str2) {
int i = 0;
while (str1[i] == str2[i]) {
if (str1[i] == '\0' && str2[i] == '\0') {
return 0; // 字符串相等
}
i++;
}
return str1[i] - str2[i]; // 返回 ASCII 码差值
}
int main() {
char str1[] = "Hello";
char str2[] = "hello";
int result = compareStrings(str1, str2);
if (result == 0) {
printf("The strings are equal.\n");
} else if (result < 0) {
printf("String 1 is less than string 2.\n");
} else {
printf("String 1 is greater than string 2.\n");
}
return 0;
}
```
在上面的代码中,我们使用了一个 `while` 循环来比较两个字符串中的每个字符,如果字符相等,就继续往下比较,直到有一个字符串结束(即遇到了 `\0`)。如果两个字符串都结束了,我们就认为它们是相等的;否则,我们就返回它们第一个不同的字符的 ASCII 码差值。
在 `main()` 函数中,我们定义了两个字符串 `str1` 和 `str2`,并调用了 `compareStrings()` 函数来比较它们。根据函数返回值的正负性,我们输出了不同的信息。
阅读全文