gcvt() | Convert float value to string in C
Here, we shall see how a float number (floating point value) can be converted to the string in C language. It is a library function defined in stdio.h header file. This function is used to convert a floating point number to string.
Syntax :
gcvt (float value, int ndigits, char * buf);
float value : It is the float or double value.
int ndigits : It is number of digits.
char * buf : It is character pointer, in this
variable string converted value will be copied.
Examples :
Input : 123.4567
Output :123.457
Input : 12345.6789
Output : 12345.7
#include <stdio.h>
#define MAX 100
int main()
{
float x = 123.4567;
char buf[MAX];
gcvt(x, 6, buf);
printf ( "buffer is: %s\n" , buf);
return 0;
}
|
Output:
buffer is: 123.457
Application: Following Program showing difference in output when division result are stored in
float type(result has precision upto six decimal places) in comparison to when stored directly in string type.
#include <stdio.h>
void divide( float x, float y)
{
char buffer[20];
float z;
z = x / y;
printf ( "%f" , z);
gcvt(x / y, 10, buffer);
printf ( "\n%s\n" , buffer);
}
int main()
{
float x = 2.0f, y = 3.0f;
divide(x, y);
return 0;
}
|
Output:
0.666667
0.6666666865
Last Updated :
22 Dec, 2017
Like Article
Save Article
Share your thoughts in the comments
Please Login to comment...