본문 바로가기

카테고리 없음

[C언어] 실수를 문자로 - gcvt()

void main(void)
{
	double num;
	char str[20];
	printf("실수를 입력해 주세요 : "); 
	scanf("%lf", &num);
	gcvt(num, 5, str);
	puts(str);
}

프로그램 실행화면


char *gcvt(double value, int digits, char *buffer);


double형 변수를 문자 또는 문자열로 바꾸어 주는 함수이다. 첫 번째 인자는 실수를 넘겨주는 인자이고 3번째 인자는 문자열이 저장될 인자이다.


2번째 인자가 조금 어렵다. 위에 있는 프로그램과 실행화면을 보면 우선 두 번째 인자의 값은 5이다. 그리고 입력한 실수의 값은 123.457이다.


하지만 결과값은 123.46이다. 즉 두번째 인자는 문자열로 저장할 수의 자릿수를 지정해 주는 녀석이다. 5를 입력 주었으니 5자리까지만 변환이 되고 그 나머지는 반올림되어 더해준다.


0.007이 짤렸기 때문에 0.01을 더해주는 것이다.