How can I convert a float
value to char*
in C
language?
char buffer[64];
int ret = snprintf(buffer, sizeof buffer, "%f", myFloat);
if (ret < 0) {
return EXIT_FAILURE;
}
if (ret >= sizeof buffer) {
/* Result was truncated - resize the buffer and retry.
}
That will store the string representation of myFloat
in myCharPointer
. Make sure that the string is large enough to hold it, though.
snprintf
is a better option than sprintf
as it guarantees it will never write past the size of the buffer you supply in argument 2.