Programming/스크랩

strnicmp() 함수

leeusin 2008. 12. 10. 00:08

자세한 설명을 알지 못해 퍼왔습니다.
출처 : 네이버 게임개발자네트워크

/*--------------------------------------------------------------------------*/
/* Purpose:        string n ignore case compare                             */
/*--------------------------------------------------------------------------*/

 

/*
      strnicmp() 함수는 s1 포인터가 가리키는 문자열과 s2가 가리키는 문자열을
      대소문자의 구분이 없이 n개의 문자만 비교합니다. 이 때 문자열의 끝인 널
      문자는 비교하지 않습니다.

      strncmp() 함수는 정수값을 돌려줍니다. s1과 s2가 같으면 0을
      다를 때에는 그 차이값을 돌려줍니다.
*/

 

#ifndef SIZE_T
#define SIZE_T
typedef unsigned long size_t
#endif

 

char toupper(char c)
{
/*
    c &= ~0x60;
    c |= 0x40;
*/
    if ((c >= 'a') && (c <= 'z')) c -= 'a' - 'A';
   
    return (c);
}

 

int strnicmp(const char *s1, const char *s2, size_t n)
{
    int i;

 

    for (i = 0; (i < n) && (toupper(*s1) == toupper(*s2)); i++, s1++, s2++) {
        if (*s1 == '\0') return (0);
    }
    if (i == n) return (0);
  
    return (toupper(*s1) - toupper(*s2));
}


 

반응형

'Programming > 스크랩' 카테고리의 다른 글

Visual Assist 의 Refactoring 기능  (0) 2009.12.02
SetTextureStageState() 함수.  (1) 2008.12.10
라디오 버튼 사용법  (0) 2008.12.10
컨트롤 포인터 가져오기  (0) 2008.12.10