I have wished to convert a float number (say: 23.7) into a string using NANO/UNO and sprintf() function; but, I am not getting the correct values. The Serial.println(myData[0], HEX); shows 0x3F instead of 0x32. Would appreciate to have my mistake/ignorance being pointed.
it's not in the UNO code, you would need to modify the compilation (linker step) flags used by the IDE. this is not a simple preference to change in the IDE... (I think you need to explore creating a compiler.cpp.extra_flags property in a local file like platform.local.txt... Not sure about the details, read about this some time ago)
I guess that you need to create it if it does not exists. Search for boards.txt and pick the directory that is the most recent. Either in C:\Program Files (x86)\Arduino\hardware\arduino\avr if you never updated the AVR boards package or in a subdirectory of C:\Users\YourUsername\AppData\Local\Arduino15\packages\arduino\hardware\avr\version if you did update it.
There is also the dtostrf() function for converting a float to a char array.
You can also print the float directly, if you do not need the string elsewhere.