ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [C언어] 포인터 - strcmp 구현
    예제/Layer7_20160404 2016. 4. 5. 22:25
    반응형

    strcmp : 문자열 2개를 비교. 여기서는 두 문자열이 같으면 1, 다르면 0을 출력한다.


    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    #include <stdio.h>
     
    int cus_strcmp(char *ptr1, char *ptr2){
        int i;
     
        for(i=0; ptr1[i]!='\0' || ptr2[i]!='\0'++i){
            if(ptr1[i]!=ptr2[i])
                return 0;
        }
        return 1;
    }
     
    int main(){
        int *ptr1, *ptr2;
        char arr1[]="asdf09876";
        char arr2[]="asdfs09876";
     
        ptr1=&arr1;
        ptr2=&arr2;
     
        printf("%d", cus_strcmp(ptr1, ptr2));
        return 0;
    }
    cs


    출력 : 1


    설명 : 

    main함수 : 

    포인터형 변수 ptr1과 ptr2를 선언

    문자열 변수 arr1과 arr2를 선언


    이제 ptr1은 arr1의 주소값을 가리킵니다.

    이제 ptr2는 arr2의 주소값을 가리킵니다.


    cus_strcmp(ptr1, ptr2)의 리턴값을 출력합니다.


    함수 cus_strcmp : 

    for문(i는 0으로 초기화; ptr1[i]와 ptr2[i]의 값이 널값이 아니라면; ++i){

    만약 ptr1[i] != ptr[i]라면, 0을 리턴함.

    }

    1을 리턴함.


    반응형

    '예제 > Layer7_20160404' 카테고리의 다른 글

    [C언어] 포인터 - strcpy 구현  (0) 2016.04.05
    [C언어] 포인터 - strlen 구현  (0) 2016.04.05

    댓글

Designed by Tistory.