형식화된 출력을 위해 printf(...)를 사용하는 것처럼 형식화된 입력을 위해
scanf(...)를 사용할 수 있다.
int fscanf(FILE *stream, const char *format, ...) fscanf(...)는 stream으로 부터 읽어서 format에서 정의된 규칙에 따라 입력을 변환한다.
결과는 주어진 아규먼트 안에 위치하게 된다. (Note:아규먼트들은 포인터여야만 한다.)
format안에 더이상의 변환 규칙이 없을 때까지 읽는다. fscanf(..)는 첫번째 변환이
파일의 끝에 도달했거나 에러가 발생했을 때 EOF를 반환한다. 그렇지 않으면, 변환된 아규먼트의
수를 반환한다.
format은 입력 아규먼트를 어떻게 형식화할 것인가에 대한 규칙을 포함한다.
이것은 또한 포함한다.:
공백(spaces)이나 탭(tab)은 무시된다.
(%를 제외한) 일반적인 문자. 문자들은 연관된 위치의 입력안에 있어야 한다.
%, 부가적인 문자 *(이것은 fscanf(..)가 아규먼트를 지정하는 것을 허락한다),
부가적인 숫자, 부가적인 문자 h,l 또는 L (이것은 타겟의 길이이다) 과 변환 문자로
조합된 변환 규칙들
int scanf(const char * format, ...) fscanf(stdin,...)과 같음
int sscanf(char *str, const char *format, ...) scanf(...)와 같지만, 입력은 str로 부터 온다.