I take it to mean that there is an actual string at the location pointed to by s. To convert a float to a string, first sprintf(s, "%.0f", a_float); or sprintf(s, "foo-%d", (int)a_float); (ensure you have space at s for the string). Then convert the string to a symbol with gensym.
Martin