C함수 문자열에서 서식에 맞춘 변수 값 받기 sscanf()
C함수 문자열에서 서식에 맞춘 변수 값 받기 sscanf()
문자열로부터 서식을 갖춘 데이터를 입력받습니다.
- 헤더: stdio.h
- 형태: int sscanf(const char *str, const char * format, ... )
- 인수: char *str 문자열
char *format 서식 문자열 - 반환: int 입력된 항목 수를 반환하며, 오류가 발생하면 EOF를 반환
예제
#include <stdio.h> int main( void) { int n_num; float f_num; char str[1024]; int ret; ret = sscanf( "100", "%d", &n_num); // 10진수를 받습니다. printf( "ret=%d %d %d\n", ret, n_num, n_num); ret = sscanf( "100", "%o", &n_num); // 8진수를 받습니다. printf( "ret=%d %d %o\n", ret, n_num, n_num); ret = sscanf( "100", "%x", &n_num); // 8진수를 받습니다. printf( "ret=%d %d %x\n", ret, n_num, n_num); // 10진수와 실수를 받습니다. ret = sscanf( "100 123.45", "%d%f", &n_num, &f_num); printf( "ret=%d %d %f\n", ret, n_num, f_num); // 10진수, 실수, 문자열 하나를 받습니다. ret = sscanf( "100 123.45 badayak.com", "%d%f%s", &n_num, &f_num, str); printf( "ret=%d %d %f %s\n", ret, n_num, f_num, str); return 0; }
실행 결과
]$ ./a.out ret=1 100 100 ret=1 64 100 ret=1 256 100 ret=2 100 123.449997 ret=3 100 123.449997 badayak.com ]$
편안한 휴일 보내세요^^