写一个函数,实现两个字符串的比较,即自己写一个strcmp函数,函数原型为 int strcmp(char p1,char p2); 设P1指向字符串s1,P2指向字符串s2。要求当s1=s2时,返回值为0,若s1不等于s2,返回它们二者第一个不同字符的ASCII码差值(如“BOY”与“BAD”,第2个字母不同,“O”与“A”之差为79-65=14)。如果s1>s2,则输出正值,如s1<s2,则输出负值。
时间: 2024-03-23 21:40:18 浏览: 135
c语言字符串处理函数[参考].pdf
好的,我可以为您编写一个strcmp函数,如下所示:
```c
int strcmp(char *p1, char *p2) {
int i = 0;
while (p1[i] != '\0' && p2[i] != '\0') {
if (p1[i] != p2[i]) {
return p1[i] - p2[i];
}
i++;
}
return p1[i] - p2[i];
}
```
其中,p1和p2分别为指向两个字符串的指针,函数通过逐个比较两个字符串中的字符来判断它们的大小关系。如果两个字符串相等,返回0;如果不相等,返回它们第一个不同字符的ASCII码差值;如果其中一个字符串已经到达了结尾,另一个字符串还有字符,则认为已经到达结尾的字符串小于另一个字符串。
阅读全文