From b1f691f2deb0b59c6e237241e1995c5d95f37ffa Mon Sep 17 00:00:00 2001 From: Franklin Wei Date: Thu, 17 Aug 2017 15:27:52 -0400 Subject: Introduce ftoa() as a replacement for the %g format specifier Not all platforms support printing floats, this is a more portable (if uglier) way. --- net.c | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) (limited to 'net.c') diff --git a/net.c b/net.c index 5796e95..d3032b6 100644 --- a/net.c +++ b/net.c @@ -249,7 +249,10 @@ static char *encode_params(const game_params *params, bool full) if (params->wrapping) ret[len++] = 'w'; if (full && params->barrier_probability) - len += sprintf(ret+len, "b%g", params->barrier_probability); + { + len += sprintf(ret+len, "b"); + len += ftoa(ret + len, params->barrier_probability); + } if (full && !params->unique) ret[len++] = 'a'; assert(len < lenof(ret)); @@ -281,7 +284,7 @@ static config_item *game_configure(const game_params *params) ret[3].name = "Barrier probability"; ret[3].type = C_STRING; - sprintf(buf, "%g", params->barrier_probability); + ftoa(buf, params->barrier_probability); ret[3].u.string.sval = dupstr(buf); ret[4].name = "Ensure unique solution"; -- cgit v1.1