프로그래밍 구조
fgets 사용법, 주의점
마느아
2021. 10. 6. 17:31
반응형
fgets(str, sizeof(str), stdin);
다음과 같은 방식으로 사용한다. str은 일반적인 char식 배열(char str[10]) 을 사용한다.
이방식을 활용하면, scanf로 값을 받아오는거와 매우 비슷한 방식으로 입력을 받을 수 있다.
stdin대신 file의 포인터 변수를 넣으면 파일의 문자열을 입력받을 수 있다.
중요한점:
1. 오직 개행과, 문자 개수가 sizeof(str)-1일때, 그리고 EOF을 만났을때만 멈춘다.
2. 일반적으로 string버퍼를 가리키는 포인터를 반환하지만, EOF을 만났을 경우에만 NULL을 반환한다.
이를 이용하여 loop에 fgets를 넣어두면, 파일이나 stdin의 입력값이 끝날때까지 입력받을 수 있다.
3. 끝에 널 문자를 부착한다. 따라서 fgets로 받은 str에는 마지막에 \n(개행문자)와 \0(널 문자)가 나오게 된다.
반응형