自定义_strcmp函数,实现宇符串比较功能,strl: ble str2: bleu str1=blue比str2=bleu大!
时间: 2024-02-16 21:05:04 浏览: 46
好的,我可以为您编写一个自定义的strcmp函数来实现字符串比较功能。下面是代码实现:
```c
int my_strcmp(const char* str1, const char* str2) {
int i;
for (i = 0; str1[i] != '\0' && str2[i] != '\0'; i++) {
if (str1[i] < str2[i]) {
return -1;
} else if (str1[i] > str2[i]) {
return 1;
}
}
if (str1[i] == '\0' && str2[i] == '\0') {
return 0;
} else if (str1[i] == '\0') {
return -1;
} else {
return 1;
}
}
```
在这个自定义的strcmp函数中,我们首先使用一个for循环来逐个比较两个字符串中对应位置的字符。如果str1[i]小于str2[i],则返回-1,表示str1小于str2;如果str1[i]大于str2[i],则返回1,表示str1大于str2;如果str1[i]等于str2[i],则继续比较下一个字符。
如果两个字符串的所有字符都相同,我们会比较它们的长度。如果两个字符串长度相等,那么它们就相等,返回0;如果str1长度小于str2长度,那么str1就小于str2,返回-1;如果str1长度大于str2长度,那么str1就大于str2,返回1。
使用上述自定义的strcmp函数,可以得到如下结果:
- my_strcmp("blue", "bleu") 返回 1,即"blue"大于"bleu"
- my_strcmp("ble", "bleu") 返回 -1,即"ble"小于"bleu"
- my_strcmp("bleu", "bleu") 返回 0,即"bleu"等于"bleu"
阅读全文