Native/C

trim function

aucd29 2013. 10. 2. 18:53
// 유의 사항이라곤 -_- 우선 기본 변수 나두고 리턴변수는 별도로 줘야한다는 거...
// 예제 코드는 밑에 -_-;

[code]
require header : ctype.h

char szDate[4];
char* szTrimDate;
szTrimDate = trim(szDate);
printf("res|%s|\r\n", szTrimDate);
[/code]

char* trim(char* ptr)
{
    char* pFirst = 0;

    // 해당 위치에 값이 존재할때까지 증가
    // 왼쪽 처리해주기
    while (isspace(*ptr))
    {
        ptr++;
    }
    pFirst = ptr;

    // 오른쪽 처리해주기
    // -1 한 이유는 그냥 하면 바로 0x00이므로..
    int nLen = strlen(pFirst) - 1;
    while (isspace(ptr[nLen]))
    {
        nLen--;
    }
    ptr[nLen+1] = 0x00;

    return pFirst;
}