编写一个字符串比较函数my_strcmp,若相等输出0,否则输出两个字符串中第一个不相同字符的ASCII码差值。
#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <math.h>
#include <string.h>
int my_strcmp(char a[], char b[])
{
int i,x;
char *p1=a,*p2=b;
while (*p1 != '\0' && *p2 != '\0') {
if (*p1 != *p2) {
x = *p1 - *p2;
break;
}
p1++;
p2++;
}
if (*p1 == '\0' || *p2 == '\0') {
x = *p1 - *p2;
}
return x;
}
void main(void)
{
char a[100], b[100];
gets(a);
gets(b);
printf("%d\n", my_strcmp(a, b));
}
将第11行指针改成数组
#include <stdio.h>
#include <math.h>
#include <string.h>
int my_strcmp(char a[], char b[])
{
int i,x;
char *p1=a,*p2=b;
while (*a!= '\0' &&*b != '\0') {
if (*p1 != *p2) {
x = *p1 - *p2;
break;
}
p1++;
p2++;
}
if (*p1 == '\0' || *p2 == '\0') {
x = *p1 - *p2;
}
return x;
}
void main(void)
{
char a[100], b[100];
gets(a);
gets(b);
printf("%d\n", my_strcmp(a, b));
}
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通