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을 더해주는 것이다.