HOWTO: 문자열을 부동 소수점 숫자로 변환

요약

Microsoft C 또는 C/C++로 개발된 응용 프로그램에서 sscanf() 함수는 숫자 문자열을 부동 소수점 숫자로 변환하는 atof() 함수를 효과적으로 대체합니다. 문자열이 유효한 숫자를 표현하지 않는 경우 atof()는 0 값을 반환하고 sscanf()는 보다 유용한 오류 정보를 반환합니다. 응용 프로그램은 matherr() 함수에 sscanf()의 오류 값을 사용하여 오류 처리를 수행할 수 있습니다. atof() 함수는 실제 수학적 예외가 발생하지 않는 한 matherr()를 호출하지 않습니다.

다음은 문자열을 부동 소수점 숫자로 변환하는 두 가지 권장 방법입니다.
  • atof() 함수를 호출하기 전에, 반환할 문자열의 유효성을 검사합니다. 문자열에는 숫자가 아닌 문자가 포함되지 않아야 하며 소수점과 부호 문자가 정확한 위치에 있어야 합니다.
  • sscanf() 함수를 사용합니다. 이 함수는 atof() 함수보다 실행 속도가 느리지만 오류 발생 시 보다 유용한 정보를 제공합니다.
속성

문서 ID: 11558 - 마지막 검토: 2005. 7. 5. - 수정: 1

피드백