편집 기록

편집 기록
  • 프로필 알 수 없는 사용자님의 편집
    날짜2016.08.14

    `fgets`가 입력을 받지 않고 바로 실행됩니다.


    while 문에서 scanf 대신 fgets를 써서 표준 입력을 받았을 때 왜 바로 입력을 기다리지 않고 한 번 수행되는지 궁금합니다.

    while (times != 0) {
        char line[51];
        int i = 0;
        fgets(line, 51, stdin); // 이 부분에서요~!
        while (line[i] != '\0') {
            if (line[i] == '(') push(line[i]);
            else if (line[i] == ')')
                if (pop() == -1)
                    break;
            i++;
        }
        if (empty() && line[i] == '\0') {
            printf("YES\n");
            count = -1;
            times--;
        } else {
            printf("NO\n");
            count = -1;
            times--;
        }
    }