다음을 통해 공유


_fcvt_s

부동 소수점 숫자를 문자열로 변환 합니다.이것은 버전입니다 _fcvt 에 설명 된 대로 보안 향상 기능을 CRT의 보안 기능.

errno_t _fcvt_s( 
   char* buffer,
   size_t sizeInBytes,
   double value,
   int count,
   int *dec,
   int *sign 
);
template <size_t size>
errno_t _fcvt_s( 
   char (&buffer)[size],
   double value,
   int count,
   int *dec,
   int *sign 
); // C++ only

매개 변수

  • [out] buffer
    제공 된 변환의 결과 보유할 버퍼입니다.

  • [in] sizeInBytes
    버퍼의 바이트 크기입니다.

  • [in] value
    변환할 숫자입니다.

  • [in] count
    소수점 뒤에 자릿수입니다.

  • [out] dec
    저장된-소수점 위치에 대 한 포인터입니다.

  • [out] sign
    저장 된 기호 표시기에 대 한 포인터입니다.

반환 값

성공 하는 경우에 0입니다.실패 하면 반환 값은 오류 코드입니다.오류 코드는 errno.h에 정의 됩니다.이러한 오류에 대 한 목록을 참조 하십시오. errno, _doserrno, _sys_errlist, _sys_nerr.

잘못 된 매개 변수는 다음 표에 나열 된이 함수가 잘못 된 매개 변수 처리기의 설명에 따라 호출 매개 변수 유효성 검사.실행을 계속 수 있으면이 함수는 설정 errno 에 EINVAL 를 반환 하 고 EINVAL.

오류 조건

buffer

sizeInBytes

value

count

12 월

sign

Return

값buffer

NULL

모든

모든

모든

모든

모든

EINVAL

수정 되지 않았습니다.

않은 NULL (올바른 메모리를 가리키는)

< = 0

모든

모든

모든

모든

EINVAL

수정 되지 않았습니다.

모든

모든

모든

모든

NULL

모든

EINVAL

수정 되지 않았습니다.

모든

모든

모든

모든

모든

NULL

EINVAL

수정 되지 않았습니다.

보안 문제

_fcvt_s경우에 액세스 위반이 발생할 수 있습니다 buffer 올바른 메모리를 가리키지 않는 한 하지 않습니다 NULL.

설명

_fcvt_s 함수는 null로 끝나는 문자열을 부동 소수점 숫자로 변환 합니다.value 매개 변수는 변환 하는 부동 소수점 숫자입니다._fcvt_s저장의 자리 value 문자열로 null 문자 ('\ 0')를 추가 합니다.count 매개 변수를 소수점 자릿수를 지정 합니다.남는 자리는 반올림 하 count 를 배치 합니다.보다 적은 경우 count 자리 전체 자릿수 문자열 0으로 채워서 수 합니다.

숫자만 있는 문자열에 저장 됩니다.부호 및 소수점의 위치 value 에서 얻을 수 있습니다 dec 및 sign 를 호출 하면 됩니다.dec 매개 변수가 가리키는 정수 값. 이 정수 값은 문자열의 시작 부분을 기준으로 소수점의 위치를 제공합니다.0 또는 음수 값을 나타냅니다 소수점 왼쪽에 첫 번째에 있는 것입니다.매개 변수 sign 의 부호를 나타내는 정수를 가리키는 value.정수의 경우 0으로 설정 되어 value 긍정적이 고 0이 아닌 숫자 경우에 설정 됩니다 value 이 음수입니다.

버퍼 길이를 _CVTBUFSIZE 부동에 대 한 충분 한 값을 가리킵니다.

차이 _ecvt_s 및 _fcvt_s 의 해석에 있는 count 매개 변수._ecvt_s해석 count 출력 문자열에서 전체 자릿수와 및 _fcvt_s c 해석ount 의 소수점이 하 자릿수입니다.

C + +에서이 함수를 사용 하는 템플릿 오버 로드에서 단순화 됩니다. 오버 로드 버퍼 길이 size 인수를 지정 하지 않아도 자동으로 유추할 수 있습니다.자세한 내용은 보안 템플릿 오버 로드를 참조하십시오.

이 함수의 디버그 버전을 먼저 버퍼 0xFD 채웁니다.이 동작을 해제 하려면 사용 _CrtSetDebugFillThreshold.

요구 사항

Function

필수 헤더

선택적 헤더

_fcvt_s

<stdlib.h>

<errno.h>

더 많은 호환성 정보를 참조 하십시오. 호환성 소개에서 합니다.

라이브러리: 의 모든 버전은 CRT 라이브러리 기능.

예제

// fcvt_s.c
#include <stdio.h>
#include <stdlib.h>
#include <errno.h>

int main()
{
  char * buf = 0;
  int decimal;
  int sign;
  int err;

  buf = (char*) malloc(_CVTBUFSIZE);
  err = _fcvt_s(buf, _CVTBUFSIZE, 1.2, 5, &decimal, &sign);
  
  if (err != 0)
  {
     printf("_fcvt_s failed with error code %d\n", err);
     exit(1);
  }

  printf("Converted value: %s\n", buf);  
  
}
  

해당 .NET Framework 항목

ToString

참고 항목

참조

데이터 변환

부동 소수점 지원

atof, _atof_l, _wtof, _wtof_l

_ecvt_s

_gcvt_s

_fcvt