1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    /*
    프로그램명 : strcmp() 함수 구현하기
    제  작  자 : 방명광 ( http://idsan.net )
    제  작  일 : 2015-05-13
    */
     
    #include <stdio.h>
    #include <string.h>
     
    int my_strcmp(char *pA, char *pB);
     
    int main(void)
    {
        char arr1[10= "AA";
        char arr2[10= "AA";
     
        char arr3[10= "AA";
        char arr4[10= "Aa";
     
        char arr5[10= "Aa";
        char arr6[10= "AA";
     
        printf("%d\n", strcmp(arr1, arr2));
        printf("%d\n", my_strcmp(arr1, arr2));
     
        printf("%d\n", strcmp(arr3, arr4));
        printf("%d\n", my_strcmp(arr3, arr4));
     
        printf("%d\n", strcmp(arr5, arr6));
        printf("%d\n", my_strcmp(arr5, arr6));
     
        return 0;
    }
     
    int my_strcmp(char *pA, char *pB)
    {    
        while (*pA != '\0' || *pB != '\0')
        {
            *pA++;
            *pB++;
            
            if (*pA == *pB)
            {
                continue;
            }
            else if (*pA > *pB)
            {
                return 1;
            }
            else if (*pA < *pB)
            {
                return -1;
            }
        }
     
        return 0;
    }
    cs


    Posted by 컴퓨터공학과 에디슨