C 언어 중의 gcvt()와 ecvt()및 fcvt()함 수 를 비교 분석 하 다
헤더 파일:\#include
정의 함수:
char *gcvt(double number, size_t ndigits, char *buf);
함수 설명:gcvt()는 인자 number 를 ASCII 코드 문자열 로 변환 하고 인자 ndigits 는 표 시 된 자릿수 를 표시 합 니 다.gcvt()와 ecvt()와 fcvt()가 다른 점 은 gcvt()가 변 환 된 문자열 에 소수점 이나 양음 기호 가 포함 되 어 있다 는 것 이다.변환 에 성공 하면 변 환 된 문자열 은 매개 변수 buf 포인터 가 가리 키 는 공간 에 놓 입 니 다.반환 값:문자열 지침 을 되 돌려 줍 니 다.이 주 소 는 buf 지침 입 니 다.
범례
#include <stdlib.h>
main(){
double a = 123.45;
double b = -1234.56;
char *ptr;
int decpt, sign;
gcvt(a, 5, ptr);
printf("a value=%s
", ptr);
ptr = gcvt(b, 6, ptr);
printf("b value=%s
", ptr);
}
실행 결과:
a value=123.45
b value=-1234.56
ecvt()함수:기능:쌍 정밀도 부동 소수점 형 수 를 문자열 로 변환 합 니 다.변환 결과 에는 10 진 소수점 이 포함 되 지 않 습 니 다.
사용법:
char *Ecvt(double value, int ndigit, int *decpt, int *sign);
상세 설명:Ecvt 함수 가 두 정밀도 부동 소수점 을 문자열 로 변환 합 니 다.value 매개 변 수 는 변환 할 부동 소수점 입 니 다.이 함 수 는 최대 ndigit 개의 숫자 값 을 문자열 로 저장 하고 빈 숫자 문자('\0')를 추가 합 니 다.value 의 숫자 개수 가 ndigit 를 초과 하면 낮은 숫자 가 반올림 됩 니 다.ndigit 숫자 보다 적 으 면 이 문자열 은 0 으로 채 웁 니 다.숫자 만 이 문자열 에 저 장 됩 니 다.소수점 위치 와 value 기 호 는 호출 된 후에 decpt 과 sign 에서 가 져 옵 니 다.decpt 매개 변 수 는 소수점 위 치 를 보 여 주 는 정수 치 를 지적 합 니 다.이 문자열 의 시작 위치 에서 계산 합 니 다.0 또는 음 수 는 소수점 이 첫 번 째 숫자의 왼쪽 에 있다 는 것 을 가리킨다.sign 매개 변 수 는 변 환 된 수 를 가리 키 는 기호의 정 수 를 가리킨다.만약 이 정수 가 0 이 라면,이 수 는 양수 이 고,그렇지 않 으 면 마이너스 이다.
인자:
fcvt()함수
함수 명:fcvt
공적. 네:부동 소수점 을 문자열 로 변환 합 니 다.
헤더 파일:
#include <stdlib.h>
원래 유형:
*fcvt(double value, int ndigit, int *decpt, int *sign);
매개 변수 설명:value 는 변환 할 부동 소수점 입 니 다.ndigit 는 소수점 뒤의 자리 입 니 다.*decpt 는 소수점 의 위 치 를 표시 합 니 다.*sign 은 기 호 를 나타 내 고 0 은 양수 이 며 1 은 마이너스 이다.인 스 턴 스 코드:
#include <stdlib.h>
#include <stdio.h>
#include <conio.h>
int main(void)
{
char *string;
double value;
int dec, sign;
int ndig = 10;
//clrscr();
value = 9.876;
string = fcvt(value, ndig, &dec, &sign);
printf("string = %s dec = %d sign = %d
", string, dec, sign);
value = -123.45;
ndig= 15;
string = fcvt(value,ndig,&dec,&sign);
printf("string = %s dec = %d sign = %d
", string, dec, sign);
value = 0.6789e5; /* scientific notation */
ndig = 5;
string = fcvt(value,ndig,&dec,&sign);
printf("string = %s dec = %d sign = %d
", string, dec, sign);
return 0;
}
출력 결 과 는 다음 과 같 습 니 다.이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
C 언어 구현 천둥 제거 게임 상세 정보먼저 작은 메뉴를 표시하고 게임을 할지 여부를 선택하십시오.사용자가 종료를 선택하면 프로그램 실행이 끝나고, 사용자가 게임을 선택하면 지뢰 제거 위치 좌표를 입력하라는 메시지가 표시됩니다.사용자가 입력한 좌표가 바둑...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.