|  | 
 
 发表于 2021-3-7 12:29:29
|
显示全部楼层
   本楼为最佳答案 
| 和库函数的名字冲突了,库函数中也有一个strcmp 
 
 复制代码//使用 fgets 函数接收用户输入的两个字符串(仅支持英文)到 str1 和 str2 中,对比 str1 和 str2,如果两个字符串完全一致,打印“完全一致”;
//如果存在不同,打印第一处不同的位置(索引下标)
#include <stdio.h>
#define MAX 256
int my_strcmp(char *str1, char *str2) {
    int count = 0;
    while (*str1==*str2 && *(str1+1)!='\0' && *(str2+1)!='\0') {
        str1++;
        str2++;
        count++;
    }
    if(*(str1+1)=='\0' && *(str2+1)=='\0') {
        printf("两个字符串完全一致");
    } else {
        printf("两个字符串不完全相同,第%d个字符出现不同",count+1);
    }
    return count;
}
int main() {
    char str1[MAX] = {'\0'}, str2[MAX] = {'\0'};
    printf("请输入第一个字符串:");
    fgets(str1, MAX, stdin);
    printf("请输入第二个字符串:");
    fgets(str2, MAX, stdin);
    //int a = strcmp(str1,str2);//使用这一行之后程序正常执行
    my_strcmp(str1,str2);//使用这一行,程序无任何输出
    return 0;
}
 | 
 |