首页 > 代码库 > 字符串比较自实现

字符串比较自实现

 1 //字符串比较自实现
 2 //2017.3.7
 3 
 4 #include <stdio.h>
 5 #include <stdlib.h>
 6 int MyStrcpy(char *p1,char  *p2);
 7 int main()
 8 {
 9     char str1[100];
10     char str2[100];
11 
12     printf("请输入第一个字符串\n");
13     gets_s(str1);
14     printf("请输入第二个字符串\n");
15     gets_s(str2);
16 
17     int n = MyStrcpy(str1, str2);
18     if (n == 0)
19     {
20         printf("两个字符串相等\n");
21     }
22     else if (n == -1)
23     {
24         printf("第二个字符串大\n");
25     }
26     else
27     {
28         printf("第一个字符串大\n");
29     }
30     system("pause");
31     return 1;
32 }
33 
34 int MyStrcpy(char *p1, char *p2)
35 {
36     while (*p1 != \0&&*p2 != \0)
37     {
38         if (*p1 - *p2 == 0)
39         {
40             p1++;
41             p2++;
42         }
43         else
44         {
45             if (*p1 - *p2 > 0)
46             {
47                 return 1;
48             }
49             else
50             {
51                 return -1;
52             }
53         }
54     }
55     //别漏掉了这种情况
56     if (*p1 == \0)
57     {
58         if (*p2 == \0)
59         {
60             return 0;
61         }
62         else
63         {
64             return -1;
65         }
66     }
67     else
68     {
69         return 1;
70     }
71 }

技术分享

字符串比较自实现