2022년 12월 13일 화요일

C 언어 Trim (불필요한 공백 지우기)

 Trim

불필요한 공백 지우기


#include <stdio.h>

#include <string.h>

#include <ctype.h>


#define MAX_STR_LEN 4000


int main(void) {

    char s[MAX_STR_LEN] = "  AAAA  BBBB CC        DDDD    a ";

    char t[MAX_STR_LEN] = {0, };

    int i=0, len=0, j=0;

    int ltrim = 0;


    len = strlen(s);


    for(i=0 ; i<len ; i++)

    {

        if(ltrim == 0) {

            if(s[i] == ' ') {

                continue;

            }

            else {

                ltrim = 1;

                t[j] = s[i];

                j++;

            }

        } else {

            t[j] = s[i];

            j++;

            if(s[i] == ' ') {

                while(1)

                {

                    i++;

                    if(s[i] == ' ') {

                        continue;

                    } else {

                        t[j] = s[i];

                        j++;

                        break;

                    }

                }

            }

        }


    }

    if(t[j-1] == ' ') {

        t[j-1] = 0;

    }

    printf("=== %s", t);


    return 0;

}