작성
·
197
0
int main()
{
char c;
int n_chars = 0;
int n_lines = 0;
int n_words = 0;
bool word_flag = false;
bool line_flag = false;
printf("Enter text : \n");
while ((c = getchar()) != STOP)
{
if (!isspace(c))
n_chars++; // count non-space characters
if (!isspace(c) && !line_flag)
{
n_lines++;
line_flag = true;
}
if (c == '\n')
line_flag = false;
}
printf("Characters = %d, Words = %d, Lines = %d\n", n_chars, n_words, n_lines);
}
bool word_flag = false;
bool line_flag = false;
이 두 문장이 어떻게 쓰이는지 모르겠어요..
그리고
line_flag =true; 이 문장이 어떤걸 의미하는지도 이해가 안갑니다.
그리고 앞선 강의에 설명이 되어있다면 제가 어떤 강의를 참고해야 될까요..?
답변 1
0
if (!isspace(c) && !line_flag) 이 부분이 이해가 가지 않으신다면 논리 연산자를 다시 공부하셔야 할 것 같습니다.
일단 디버거를 활용해서 언제 그 변수들의 값이 변하는 지를 직접 찾아보시기를 권장합니다.
하나하나 따져보는 것이 처음에는 쉽지 않은데, 한 번 익숙해지면 실력 향상이 빨라집니다.