_fcvt
부동 소수점 숫자를 문자열로 변환합니다. 이러한 기능의 더 안전한 버전을 사용할 수 있습니다. _fcvt_s 를 참조하십시오.
char *_fcvt(
double value,
int count,
int *dec,
int *sign
);
매개 변수
value
변환될 수 있는 숫자count
소수점 뒤에 자릿수입니다.dec
저장된 소수점 위치에 대한 포인터입니다.sign
저장된 부호 표시기에 대한 포인터입니다.
반환 값
_fcvt는 숫자의 문자열을 가리키는 포인터나 NULL, 혹은 오류를 반환합니다.
설명
_fcvt 함수는 null로 끝나는 문자열을 부동 소수점 숫자로 변환합니다. value 매개 변수는 변환된 부동 소수점 숫자입니다. _fcvt은 value의 자릿수를 문자열로 저장하고 null 문자 ('\0')를 추가합니다. count 매개 변수는 소숫점 이후에 저장될 자릿수를 지정합니다. 초과 자릿수는 count를 반올림합니다. count보다 적은 자릿수의 정밀도인 경우, 문자열은 0으로 채워집니다.
_fcvt 로 반환 되는 전체 자릿수는 _CVTBUFSIZE를 넘어서는 안됩니다.
숫자만이 문자열에 저장됩니다. 소수점의 위치 및 value의 부호는 호출 이후 dec과 sign으로부터 얻을 수 있습니다. dec 매개 변수는 정수 값을 가리킵니다. 이 정수 값은 문자열의 시작 부분에 대한 소수점의 위치를 제공합니다. 0 또는 음수 값은 소수점이 첫째 자리의 왼쪽에 위치하는 것을 가리킵니다. 매개 변수 sign은 value의 부호를 나타내는 정수를 가리킵니다. 이 정수는 value가 양수인 경우 0으로 설정되며 value가 음수인 경우 0이 아닌 숫자로 설정됩니다.
_ecvt 및 _fcvt에서 count 매개 변수의 번역 차이입니다. _ecvt는 count을 출력 문자열의 전체 자릿수로 해석하며, _fcvt은 count를 소수점 뒤의 자릿수로 해석합니다.
_ecvt와 _fcvt 는 변환에 정적으로 할당된 버퍼를 사용합니다. 이러한 루틴 중 하나를 호출 할 때마다 이전 호출의 결과를 삭제합니다.
이 함수는 해당 매개 변수의 유효성을 검사합니다. 만일 dec 또는 sign 이 NULL이거나 count 이 0이라면, 매개 변수 유효성 검사에 설명된 대로 잘못된 매개 변수 처리기가 호출됩니다. 계속해서 실행하도록 허용된 경우, errno 는 EINVAL 와 NULL을 반환합니다.
요구 사항
Function |
필수 헤더 |
---|---|
_fcvt |
<stdlib.h> |
호환성에 대한 자세한 내용은 소개 단원의 호환성 부분을 참조하십시오.
예제
// crt_fcvt.c
// compile with: /W3
// This program converts the constant
// 3.1415926535 to a string and sets the pointer
// buffer to point to that string.
#include <stdlib.h>
#include <stdio.h>
int main( void )
{
int decimal, sign;
char *buffer;
double source = 3.1415926535;
buffer = _fcvt( source, 7, &decimal, &sign ); // C4996
// Note: _fcvt is deprecated; consider using _fcvt_s instead
printf( "source: %2.10f buffer: '%s' decimal: %d sign: %d\n",
source, buffer, decimal, sign );
}