오늘은 표준 입출력에 대해서 배웠다. 표준 입출력 함수는 scanf, printf같은 내가 평소에 많이 쓰던 것도 있고 putchar, gets, puts처럼 평소에 내가 잘 쓰지 않는 것들도 있다. 그리고 이 표준 입출력 함수도 버퍼를 이용하는 입출력 함수가 있고 버퍼를 이용하지 않는 입출력 함수가 있다. 버퍼를 이용하지 않는 입출력 함수에는 _getch나 _getche같은게 있다.
이 코드는 버퍼를 이용하는 입출력 함수인 getchar를 이용한 코드다. 이 코드는 EOF를 입력할 때까지 문자열을 입력받고 EOF를 입력하면 while문을 종료해서 입력받은 문자열 중에서 가장 길었던 문자열의 길이를 출력하는 코드다. 먼저 while(1)해서 계속 반복하게 한다. 처음에 getchar로 \n이 입력될 때까지 문자들을 입력받는다. 그리고 이 과정에서 가장 긴 문자열의 길이를 구하기 위해서 i값을 증가시킨다. 만약에 개행이 이루어지면 기존에 가장 긴 문자열의 길이였던 temp와 i를 비교하고 만약에 i가 temp보다 크면 temp = i를 해준다. 그리고 i를 다시 0으로 초기화 해준다. 그리고 i가 또 증가되면 안되기 때문에 continue로 바로 처음부터 다시 반복한다. 그러다가 EOF가 입력되면 break로 while문을 탈출한다. 그리고 temp를 출력한다.
댓글 없음:
댓글 쓰기